matplotlib获取ylim值
我正在使用matplotlib
来绘制Python中的数据(使用plot
和errorbar
函数)。 我必须绘制一组完全独立和独立的图,然后调整它们的ylim
值,以便可以方便地进行视觉比较。
我怎样才能从每个阴谋检索ylim
值,以便我可以分别取得最低和最高的ylim值,并调整图,使他们可以在视觉上进行比较?
当然,我可以分析数据,并提出自己的自定义ylim
值…但我想用matplotlib
来为我做。 有关如何轻松(和有效)执行此操作的任何build议?
这里是我使用matplotlib
绘制的Python函数:
import matplotlib.pyplot as plt 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='.') # axes axes = plt.gca() axes.set_xlim([-0.5, len(values) - 0.5]) axes.set_xlabel('My x-axis title') axes.set_ylabel('My y-axis title') # title plt.title(title) # save as file plt.savefig(plot_file_name) # close figure plt.close(fig)
只需使用axes.get_ylim()
,它与set_ylim
非常相似。 从文档 :
get_ylim()
获取y轴范围[bottom,top]
ymin, ymax = axes.get_ylim()
如果你正在使用plt
结构,为什么还要打扰到轴? 这应该工作:
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.xlim([-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)
或者是不是这样?