我在matplotlib上找到了下面的例子:
import numpy as np
import matplotlib.pyplot as plt
x1 = np.linspace(0.0, 5.0)
x2 = np.linspace(0.0, 2.0)
y1 = np.cos(2 * np.pi * x1) * np.exp(-x1)
y2 = np.cos(2 * np.pi * x2)
plt.subplot(2, 1, 1)
plt.plot(x1, y1, 'ko-')
plt.title('A tale of 2 subplots')
plt.ylabel('Damped oscillation')
plt.subplot(2, 1, 2)
plt.plot(x2, y2, 'r.-')
plt.xlabel('time (s)')
plt.ylabel('Undamped')
plt.show()
我的问题是:我需要改变什么,让情节并排?
5条答案
按热度按时间qltillow1#
将子图设置更改为:
subplot
的参数为:行数、列数以及当前所在的子图。因此,1, 2, 1
表示“一个1行2列的图形:转到第一个子图。”那么1, 2, 2
表示“一行两列的图:进入第二个子情节。”您当前要求的是2行1列(即一个在另一个之上)布局。您需要改为要求1行2列布局。这样做时,结果将是:
为了最大限度地减少子情节的重叠,您可能需要启动:
在演出之前。让步:
siotufzp2#
查看此页面:http://matplotlib.org/examples/pylab_examples/subplots_demo.html
plt.subplots
也是类似的,我认为它更好,因为它更容易设置图形的参数。前两个参数定义布局(在您的情况下为1行,2列),其他参数更改图形大小等特性:j5fpnvbx3#
当在一个方向上堆叠子图时,matplotlib文档建议如果您只是创建几个轴,则立即解包。
pieyvz9o4#
您可以使用- matplotlib.网格规范
检查-https://matplotlib.org/stable/api/_as_gen/matplotlib.gridspec.GridSpec.html
下面的代码在右边显示一个热图,在左边显示一个Image。
Output image
dnph8jn45#
基本上我们必须定义我们需要多少行和列。假设我们有总共4个分类列要绘制。让我们有2行和2列的总共4个图。