使用savefig保存数字时,Matplotlib不会忘记以前的数据

时间:2016-12-15 22:15:47

标签: python matplotlib

B

输出:

azul amarillo

为什么会发生这种情况以及如何解决?

1 个答案:

答案 0 :(得分:1)

您看到的是完全预期的行为。您可以根据需要随意绘制尽可能多的数据,这通常非常有用。

如果要使用matplotlib状态机在同一脚本中创建多个数字,则需要先关闭一个数字,然后再生成下一个数字。

所以在这个非常简单的情况下,只需在图形创建之间添加plt.close()

import matplotlib.pyplot as plt
plt.plot([1,2,3],[1,2,3],'bo')
plt.axis([-4,4,-4,4])
plt.savefig('azul.png')
plt.close()
plt.plot([0,1,2],[0,0,0],'yo')
plt.axis([-4,4,-4,4])
plt.savefig('amarillo.png')