目前,我在2x2子图中绘制了3个图。看起来像这样:

fig, axes = plt.subplots(nrows=2, ncols=2)
df1.plot('type_of_plot', ax=axes[0, 0]);
df2.plot('type_of_plot', ax=axes[0, 1]);
df3.plot('type_of_plot', ax=axes[1, 0]);

第4个子图是空的,我希望第3个子图占据整个最后一行。

我为第三个子图尝试了各种轴组合。像axes[1]axes[1:]axes[1,:]一样。但是一切都会导致错误。

那么我怎样才能实现自己想要的呢?

最佳答案

你可以这样做 :

import matplotlib.pyplot as plt

fig=plt.figure()
a=fig.add_axes((0.05,0.05,0.4,0.4)) # number here are coordinate (left,bottom,width,height)
b=fig.add_axes((0.05,0.5,0.4,0.4))
c=fig.add_axes((0.5,0.05,0.4,0.85))

df1.plot('type_of_plot', ax=a);
df2.plot('type_of_plot', ax=b);
df3.plot('type_of_plot', ax=c);

plt.show()

另请参阅documentation of add_axes

我给您的rect坐标不太可读,但是您可以轻松调整它。

编辑:这就是我得到的:python -  Pandas 图,结合两个图-LMLPHP

关于python - Pandas 图,结合两个图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38989178/

10-12 00:24