我希望我的程序输出单独的饼图,但是当我运行它时,它们最终会相互叠加。 这是我正在运行的代码:
plt.pie(sizes, labels=labels, autopct = '%1.1f%%', shadow=True, startangle=90)
plt.axis('equal')
plt.suptitle(title)
plt.show()
但是我从另一个函数中调用了这个函数
for x in y:
if x.isupper() == True:
result = chart(x)
return result
然后那将调用上面的函数,我希望它能够绘制单独的饼图,但是它们最终会相互调用。
答案 0 :(得分:0)
你能使用子图吗?您可以使用fig.add_subplot(y,x,n)向图中添加子图,其中y是y方向的总图,x是x方向的图,n是当前图。
例如,此代码:
import matplotlib.pyplot as plt
fig = plt.figure()
# First plot
fig.add_subplot(1,2,1)
plt.axis('equal')
plt.pie(range(0,5))
plt.title("Plot 1")
# Second plot
fig.add_subplot(1,2,2)
plt.axis('equal')
plt.pie(range(0,10))
plt.title("Plot 2")
plt.show()
将在同一个图形对象上创建2个不同的图,如this image。
所示