Python 如何使垂直堆叠的对偶图的顶部图变小?
我有一张图,上面有两张图,可以直接比较。但是,当我在图形中添加颜色条时,它会使顶部图形比下面的颜色贴图更宽,如下图所示,但我希望顶部线条图形与下面的颜色贴图一样宽: 使用代码:Python 如何使垂直堆叠的对偶图的顶部图变小?,python,python-3.x,matplotlib,subplot,colormap,Python,Python 3.x,Matplotlib,Subplot,Colormap,我有一张图,上面有两张图,可以直接比较。但是,当我在图形中添加颜色条时,它会使顶部图形比下面的颜色贴图更宽,如下图所示,但我希望顶部线条图形与下面的颜色贴图一样宽: 使用代码: import numpy as np import matplotlib.pyplot as plt x = 20,40,60,80,100 y = 0,0,0,30,100 x1 = [[20, 20, 20, 20, 20], [40, 40, 40, 40, 40], [60, 60, 60, 60,
import numpy as np
import matplotlib.pyplot as plt
x = 20,40,60,80,100
y = 0,0,0,30,100
x1 = [[20, 20, 20, 20, 20], [40, 40, 40, 40, 40], [60, 60, 60, 60, 60], [80, 80, 80, 80, 80], [100, 100, 100, 100, 100]]
y1 = [[1000, 2000, 3000, 4000, 5000],[1000, 2000, 3000, 4000, 5000],[1000, 2000, 3000, 4000, 5000],[1000, 2000, 3000, 4000, 5000],[1000, 2000, 3000, 4000, 5000]]
z1 = [[0,0,0,0,0], [0,1,2,1,0], [0,1,2,1,0], [0,20,100,20,0], [0,40,200,40,0]]
gridspec_kw = dict(
height_ratios=(1, 2),
hspace=0,
)
fig, axes = plt.subplots(
nrows=2, ncols=1, sharex=True, gridspec_kw=gridspec_kw,
)
axes[0].plot(x,y)
cs = axes[1].pcolor(x1, y1, z1, cmap='RdBu')
plt.colorbar(cs)
plt.show()
问题是颜色栏在子地块中占用了一些空间。您可以使用此解决方案,并用以下代码替换plt.colorbar(cs)行:
fig.subplots_adjust(right=0.8)
cbar_ax = fig.add_axes([0.85, 0.15, 0.05, 0.7])
fig.colorbar(cs, cax=cbar_ax)