2
我浏览过“可能已经有你的答案的问题”,如果他们这样做......我不明白这一点。matplotlib savefig()blank - show()不是
我试图尽可能地消除,并简化了我的问题到下面的代码(我的道歉 - 我敢肯定,有一个更优雅的方式获得所有40年代的numpy数组,但这是什么我想出了敲我的头后....):
import numpy
import matplotlib.pyplot as plt
x=numpy.zeros((500,256))
x+=40
plt.title("Title")
plt.xlabel("Label")
plt.ylabel("Label")
plt.imshow(x,vmin=37.5,vmax=42.5, cmap='spectral')
#save the figure
filename="/xxx/yyy/matplotlibtest.jpg"
plt.savefig(filename)
plt.show()
plt.close()
plt.savefig()返回我的标签,一个非常漂亮的图像,斧头,并没有数字(即矩形为空)
plt.show()向我展示了上面所有的上面有一个很好的绿色矩形,它位于我的轴之间,就像它应该是的一样。我可以手动将此图保存到同一个目录,并获得我期望的结果(即轴,标签,绿色矩形)。
我试过这个没有显示()或通过show()调用来第二次,因为一些问题&在这里(和其他地方)的答案似乎暗示呼叫顺序可能是问题。
我把这段代码中的其他数字(相同数据的直方图)保存为jpg,所以我知道这台计算机可以保存为jpg。
我不知道我在做什么错误与savefig - 任何建议?
谢谢!
我刚刚在不同的计算机上测试过这段代码,它在哪里工作。它不起作用的系统是Ubuntu 10.04,我的帐户是未经洗刷的大众的一部分(没有特权)。我认为这意味着它在Ubuntu的后端,尽管事实上它很高兴地为我保存了直方图的数字。 –