如何在matplotlib中绘制非方形图形大小的圆形饼图

Cla*_*Sav 7 python matplotlib

我想在一个矩形图中绘制一个圆形馅饼.目前我正在使用类似的东西:

fig = plt.figure(figsize=figsize, dpi=inch)

# plot actually
ax = fig.add_subplot(1, 1, 1)
ax.pie(value_list, labels=labels_list, **kwargs)

plt.savefig(plt_pathname)
plt.close()
Run Code Online (Sandbox Code Playgroud)

如果figsize不是方形(例如[4, 4]),那么得到的图形将被拉伸,椭圆形.我能解决这个问题吗?

Joe*_*ton 17

只需使用ax.set_aspect(1)ax.axis('equal').(或plt.axis('equal'))

ax.axis('equal') 还会将x和y限制设置为相同,并将绘图的外观设置为1.在您的情况下,这可能是最佳选择.