【发布时间】:2014-03-10 17:48:58
【问题描述】:
我有一个小型 Django 应用程序,可以生成两个不同的饼图。 但是显示的第一个图表中的标签重新出现在 第二张图表。
我只是在使用:
plt.pie(...)
plt.savefig(...)
在同一个视图中为两个不同的饼图使用两个不同的 (小)数据集。
保存后是否需要调用一些“清除”或“重置”方法 剧情?
【问题讨论】:
标签: python django charts matplotlib
我有一个小型 Django 应用程序,可以生成两个不同的饼图。 但是显示的第一个图表中的标签重新出现在 第二张图表。
我只是在使用:
plt.pie(...)
plt.savefig(...)
在同一个视图中为两个不同的饼图使用两个不同的 (小)数据集。
保存后是否需要调用一些“清除”或“重置”方法 剧情?
【问题讨论】:
标签: python django charts matplotlib
您可以保持代码不变,并在保存第一个图之后和生成第二个图之前调用clf() 清理您的图。
通过这样做,您将与matplotlib 状态机进行交互。 Matplotlib 会自动为您创建图形和坐标轴,并且您可以继续使用相同的图形。
另一种方法是以更面向对象的方式使用matplotlib。您要求 matplotlib 创建图形和轴对象,然后通过调用这些对象的方法来完成所有其余工作:
fig1,ax1=plt.subplots()
fig2,ax2=plt.subplots()
ax1.pie(...)
ax2.pie(...)
fig1.savefig(...)
fig2.savefig(...)
用法常见问题解答here 阐明了这两个选项。
【讨论】: