gpt4 book ai didi

python - matplotlib:绘制许多子图时,图中出现空白区域

转载 作者:太空宇宙 更新时间:2023-11-03 14:23:50 26 4
gpt4 key购买 nike

我正在使用 matplotlib 绘制几十个子图。在图的底部,在最后一行图和图例之间,出现了一个空白区域。当我添加更多子图时,空白区域会变大。知道如何摆脱这个空白空间吗?

这是工作代码:

import textwrap
import matplotlib.pyplot as plt
from collections import OrderedDict

rlen = 31 # number of plots
figsize = (11, 3) # matrix of subplots
fig = plt.figure(figsize=(figsize[1]*4, figsize[0]*4))

plots = []
for f_ind in range(rlen):
plots.append(fig.add_subplot(figsize[0], figsize[1], f_ind))

fig.subplots_adjust(wspace=0.5, hspace=0.5)

for ax in plots:
atitle = 'Aaa bbb ccc ' * 10
ax.set_title('\n'.join(textwrap.wrap(atitle, 45)), fontsize=10)
ax.plot(range(10), range(10), 'o', color='red', label='LABEL_1')
revlist = list(reversed(range(10)))
ax.plot(revlist, range(10), 'o', color='blue', label='LABEL_2')
ax.set_xlabel('Train set size', fontsize=9)
ax.set_ylabel('Accuracy (%)', fontsize=9)

handles, labels = plt.gca().get_legend_handles_labels()
by_label = OrderedDict(zip(labels, handles))
lgd = fig.legend(by_label.values(), by_label.keys(), loc='lower center', ncol=4)
fig.savefig('ZZZ.png', dpi=fig.dpi, bbox_extra_artists=(lgd,), bbox_inches='tight')

您还可以查看示例结果here .谢谢!

最佳答案

您可以使用 subplots_adjustbottom 关键字来设置相对于图形绘制子图的点。

例如:

fig.subplots_adjust(wspace=0.5, hspace=0.5, bottom=0)

然后图例将接近“最低”的子图。这是结果图像底部的裁剪图:

enter image description here

除了bottom,还有leftrighttop关键字。

关于python - matplotlib:绘制许多子图时,图中出现空白区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23472822/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com