有人能帮我解释一下为什么plt.tight_layout
未能压缩最后一个nest_饼图的布局?在
plt.tight_layout()
has applied to every figure except last one. So strange it seems to me thatplt.show()
can show every figure, but.tight_layout()
can not tight everyone.
代码在这里:
def all_pie_nested():
for i in a:
fig, ax = plt.subplots()
data0 = df.groupby(i)['income'].sum()
data0.plot.pie(autopct='%.1f%%')
ax.set(aspect=1)
for i1 in a:
if i1 != i:
size = 0.4
fig, ax = plt.subplots()
data1 = df.groupby([i, i1])['income'].sum()
data0.plot.pie(ax=ax, radius=1 - size, autopct='%.1f%%', wedgeprops=dict(width=size, edgecolor='w'))
data1.plot.pie(ax=ax, radius=1, autopct='%.1f%%', wedgeprops=dict(width=size, edgecolor='w'))
ax.set(aspect=1)
for i2 in a:
if i2 != i1 and i2 != i:
fig, ax = plt.subplots()
data2 = df.groupby([i, i1, i2])['income'].sum()
data0.plot.pie(ax=ax, radius=1-size, autopct='%.1f%%', wedgeprops=dict(width=size, edgecolor='w'))
data1.plot.pie(ax=ax, radius=1, autopct='%.1f%%', wedgeprops=dict(width=size, edgecolor='w'))
data2.plot.pie(ax=ax, radius=1+size, autopct='%.1f%%', wedgeprops=dict(width=size, edgecolor='w'))
ax.set(aspect=1)
plt.tight_layout()
plt.show()
你想要多少数字?一个还是多个?如果有,为什么要多次调用子批次?如果是多个,您可能更希望为循环内的每个图形调用tight_layout():
如下图所示:图3图5来自同一代码,但它们不同:
我尝试在每个循环中调用
plt.tight_layout()
,并将figure.autolayout rcParam
设置为for i in a:
下的True
,它们都不能使图5具有与 图3。在分模线。。。。。。。。。。。。。。。。。。。。。。。。在
目前唯一的办法是将
size
从0.4
设置为0.3
,并在``fori in a:希望以后有人能解释它的机理。
^{pr2}$
相关问题 更多 >
编程相关推荐