如何在同一图中并排绘制3个图形python 3

时间:2019-04-12 09:21:09

标签: python python-3.x

我想连续绘制3个图,所以第一个图的线在哪里结束,第二个图的线在哪里开始,第二个图的结束在哪里,我希望第三个图在哪里继续。

因为我有3个子图,所以我希望在一行中一个接一个地绘制它们。

这是我的代码,但是将它们分开绘制:

fig, (ax1, ax2, ax3) = plt.subplots(nrows=3, ncols=1) # two axes on figure
ax1.plot(max_1_season.index, base_1_season.r_base,'r')
ax2.plot(max_2_season.index, base_2_season.r_base, 'b')
ax3.plot(max_3_season.index, base_3_season.r_base, 'g')

plt.savefig('plot.png', dpi=600)
plt.show()

根据我拥有的值,我知道每个季节后都应该有上升曲线,所以我知道它们确实一个接一个地延续(看看x轴)。

如下图所示,如何将它们合并在一起?

picture of plotting

1 个答案:

答案 0 :(得分:0)

您可以使用np.linspace连续地为每个图创建x轴矢量。

例如:

ax1 = np.random.randn(10)
ax2 = np.random.randn(10)
ax3 = np.random.randn(10)

y1 = np.linspace(1,10,10)
y2 = np.linspace(11,20,10)
y3 = np.linspace(21,30,10)

plt.plot(y1, ax1, 'r') 
plt.plot(y2, ax2, 'b') 
plt.plot(y3, ax3, 'g') 
plt.show()

enter image description here