2011年03月22日 星期二 16:30
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(12,10))
fig.savefig('3.png',format="png")
plt.savefig('3.png',format="png")
查:help(fig.savefig)
Help on method savefig in module matplotlib.figure:
savefig(self, *args, **kwargs) method of matplotlib.figure.Figure instance
查:help(plt.savefig)
Help on function savefig in module matplotlib.pyplot:
现在有点乱了,到底这个savefig在哪个模块中,fig.savefig和plt.savefig有什么区别呢
2011年03月22日 星期二 16:32
还有另外一些,现在一时间记不清了,都感觉是有重复的,一直学习matplotlib,一直没有找到学通顺的感觉
2011年03月25日 星期五 13:43
pyplot是一个模块,savefig是其中的一个函数。为了用法和MATLAB保持一致,matplotlib通过pyplot模块提供了一套和MATLAB类似的绘图函数集。而matplotlib内部则是面向对象的。
在matplotlib中用Figure对象表示图表,plt.figure将创建这样一个对象,而Figure对象的savefig方法将图表保存成图片。pyplot模块内部保存当前图表对象,当调用plt.savefig时,它会找到当前图表对象,然后调用其favefig方法。
在IPython中输入plt.savefig??,可以看到pyplot.savefig的源代码:
def savefig(*args, **kwargs):
fig = gcf()
return fig.savefig(*args, **kwargs)
可以看出它先通过gcf()找到当前图表,然后调用图表对象的savefig方法。因此pyplot基本上就是对面向对象的库做了一个面向函数的包装。
Zeuux © 2024
京ICP备05028076号