matplotlib饼图从上一个饼图中留下标签

时间:2014-03-10 17:48:58

标签: python django charts matplotlib

我有一个小的Django应用程序,可生成两个不同的饼图。 但是显示的第一张图表中的标签重新出现 第二张图表。

我刚刚使用:

plt.pie(...)
plt.savefig(...)

在同一视图中使用两个不同的两个不同的饼图 (小)数据集。

在保存之后我需要调用一些“清除”或“重置”方法吗? 情节?

1 个答案:

答案 0 :(得分:3)

您可以保持代码不变,并在保存第一个绘图之后和生成第二个绘图之前调用clf()来清理您的图形。

通过这样做,您正在与matplotlib状态机连接。 Matplotlib会自动为您创建图形和轴,您可以使用相同的图形。

另一种方法是以更加面向对象的方式使用matplotlib。您要求matplotlib创建图形和轴对象,然后通过调用这些对象的方法来完成所有其他操作:

fig1,ax1=plt.subplots()
fig2,ax2=plt.subplots()
ax1.pie(...)
ax2.pie(...)
fig1.savefig(...)
fig2.savefig(...)

使用常见问题解答here阐明了两个选项。