【发布时间】:2020-01-02 17:49:57
【问题描述】:
我想创建一个能够将多个图形绘制到一个 PDF 文件中的 python 程序,但是子图的数量是可变的。我已经这样做了,每页一张图。但是,由于我有时会得到大约 100 个地块,这些地块会进行大量滚动并且并没有真正清楚地显示出来。因此,我希望每页获得 5X4 个 subpltots。 我已经为此编写了代码,整个代码很长,而且由于我对 pyhton 很陌生,所以对于知道该怎么做的人来说它看起来很糟糕,但是绘图部分看起来像这样:
rows = (len(tags))/5
fig = plt.figure()
count = 0
for keyInTags in tags:
count = count + 1
ax = fig.add_subplot(int(rows), 5, count)
ax.set_title("cell" + keyInTags)
ax.plot(x, y_green, color='k')
ax.plot(x, y_red, color='k')
plt.subplots_adjust(hspace=0.5, wspace=0.3)
pdf.savefig(fig)
我的想法是我得到一个 PDF,其中绘制了所有“细胞”(用于生物学研究)。到目前为止,我编写的代码运行良好,但是如果我有超过 4 行的子图,我想做一个“pageprake”。在某些情况下,我在一页上有超过 21 行,这使得看不到任何东西。
那么,有没有解决方案,例如,告诉 Python 在 4 行后进行分页符?在有 21 行 id 的情况下,希望有 6 页具有漂亮可见图的页面。还是通过做 5x4 绘图然后以某种方式遍历文件来完成? 如果有人可以提供一点帮助或提示,我会非常高兴。我在这里坐了 4 个小时,没有找到解决办法。
【问题讨论】:
标签: python matplotlib subplot