I have the following matplotlib code which all it does is plots 0-20 on the x-axis vs 0-100 on the y-axis
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(range(20))
ax.set_yticks(range(100))
labels = ax.set_yticklabels(range(100))
The problem I have is that not all the labels actually fit within the y-axis.
What I want to do is to divide the maximum label size into the total area of the figure to calculate how many labels I can put so that then I can group my data into sections 0-10, 10-20, 30-40 and plot those rather than display individual labels 1,2,3,4,5,6,7,8...
I am having trouble with finding the label size of the labels and the label size of the figure (correct me if I am wrong maybe it is the axis size in pixels. It is the first time I am using matplotlib)
How can I find out the number of pixels the figure/axes is taking up (width + height) and also the number of pixels (width + height) of each label?
Simply add the following line:
plt.tight_layout()
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With