使用matplotlib一次显示10个子图
我有10个小图,但我只能用matplotlib把9个图放在一个图形里,如下图所示
我在想,是否可以调整我的Python代码,让它也能放下第10个图?
以下是我目前配置这些小图的代码。
fig = plt.figure(figsize=(10,8))
a1 = fig.add_subplot(331)
a2 = fig.add_subplot(332)
a3 = fig.add_subplot(333)
a4 = fig.add_subplot(334)
a5 = fig.add_subplot(335)
a6 = fig.add_subplot(336)
a7 = fig.add_subplot(337)
a8 = fig.add_subplot(338)
a9 = fig.add_subplot(339)
1 个回答
6
只需要增加你的图表网格:
fig = plt.figure(figsize=(10,8))
a1 = fig.add_subplot(521)
a2 = fig.add_subplot(522)
a3 = fig.add_subplot(523)
a4 = fig.add_subplot(524)
a5 = fig.add_subplot(525)
a6 = fig.add_subplot(526)
a7 = fig.add_subplot(527)
a8 = fig.add_subplot(528)
a9 = fig.add_subplot(529)
a10 = fig.add_subplot(5,2,10)
fig.add_subplot(52X)
是表示5行2列的第X个图的简写。你之前的代码只允许显示9个图,因为它是一个3 x 3的网格(fig.add_subplot(33X)
);把它改成5 x 2的网格就可以显示第10个图了。
你可以随意调整列数或行数,来达到你想要的效果。