matplotlib get ylim values
Become part of the top 3% of the developers by applying to Toptal https://topt.al/25cXVn
--
Music by Eric Matyas
https://www.soundimage.org
Track title: Hypnotic Orient Looping
--
Chapters
00:00 Question
01:15 Accepted answer (Score 237)
01:36 Answer 2 (Score 55)
02:12 Answer 3 (Score 24)
02:58 Answer 4 (Score 7)
03:13 Thank you
--
Full question
https://stackoverflow.com/questions/2613...
Accepted answer links:
[docs]: http://matplotlib.org/1.3.0/api/axes_api...
Answer 3 links:
[image]: https://i.stack.imgur.com/iuzv5.png
--
Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...
--
Tags
#python #matplotlib #plot
#avk47
--
Music by Eric Matyas
https://www.soundimage.org
Track title: Hypnotic Orient Looping
--
Chapters
00:00 Question
01:15 Accepted answer (Score 237)
01:36 Answer 2 (Score 55)
02:12 Answer 3 (Score 24)
02:58 Answer 4 (Score 7)
03:13 Thank you
--
Full question
https://stackoverflow.com/questions/2613...
Accepted answer links:
[docs]: http://matplotlib.org/1.3.0/api/axes_api...
Answer 3 links:
[image]: https://i.stack.imgur.com/iuzv5.png
--
Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...
--
Tags
#python #matplotlib #plot
#avk47
ACCEPTED ANSWER
Score 260
Just use axes.get_ylim(), it is very similar to set_ylim. From the docs:
get_ylim()
Get the y-axis range [bottom, top]
ANSWER 2
Score 58
ymin, ymax = axes.get_ylim()
If you are using the plt api directly, you can avoid calls to axes altogether:
def myplotfunction(title, values, errors, plot_file_name):
# plot errorbars
indices = range(0, len(values))
fig = plt.figure()
plt.errorbar(tuple(indices), tuple(values), tuple(errors), marker='.')
plt.ylim([-0.5, len(values) - 0.5])
plt.xlabel('My x-axis title')
plt.ylabel('My y-axis title')
# title
plt.title(title)
# save as file
plt.savefig(plot_file_name)
# close figure
plt.close(fig)
ANSWER 3
Score 28
Leveraging from the good answers above and assuming you were only using plt as in
import matplotlib.pyplot as plt
then you can get all four plot limits using plt.axis() as in the following example.
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5, 6, 7, 8] # fake data
y = [1, 2, 3, 4, 3, 2, 5, 6]
plt.plot(x, y, 'k')
xmin, xmax, ymin, ymax = plt.axis()
s = 'xmin = ' + str(round(xmin, 2)) + ', ' + \
'xmax = ' + str(xmax) + '\n' + \
'ymin = ' + str(ymin) + ', ' + \
'ymax = ' + str(ymax) + ' '
plt.annotate(s, (1, 5))
plt.show()

