默认情况下,matplotlib 子图按行填充,而不是按列填充。为了澄清,命令
plt.subplot(nrows=3, ncols=2, idx=2)
plt.subplot(nrows=3, ncols=2, idx=3)
首先绘制到 3x2 绘图网格的右上图(idx=2),然后绘制到左中图(idx=3)。
有时无论出于何种原因,都可能需要按行而不是按列填充子图(例如,因为直接连续的图属于一起,并且当位于彼此下方而不是彼此相邻时更容易解释)。如何实现?
最佳答案
您可以使用以下方法创建 3x2 轴数组:
fig, axes = plt.subplots(nrows=3, ncols=2)
如果你转置这个数组,然后展平你可以按列绘制,而不是按行绘制:
fig, axes = plt.subplots(nrows=3, ncols=2)
for ax in axes.T.flatten():
ax.plot([1,2,3])
关于python - 按列而不是行填充 matplotlib 子图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49054631/