您可以使用 imshow 来显示您的风阵。它需要重新整形为 2D 数组,但“高度”尺寸可以是长度 1。将范围设置为顶部轴的尺寸使其与其对齐。
wind = np.random.randn(100) + np.random.randn(100).cumsum() * 0.5
x = np.arange(len(wind))
y = wind
t = y
fig, ax = plt.subplots(2,1,figsize=(10,6))
ax[0].plot(x,y)
ax[1].plot(x, 100- y * 10, lw=2, c='black')
ymin, ymax = ax[1].get_ybound()
xmin, xmax = ax[1].get_xbound()
im = ax[1].imshow(y.reshape(1, y.size), extent=[xmin,xmax,ymin,ymax], interpolation='none', alpha=.5, cmap=plt.cm.RdYlGn_r)
ax[1].set_aspect(ax[0].get_aspect())
cax = fig.add_axes([.95,0.3,0.01,0.4])
cb = plt.colorbar(im, cax=cax)
cb.set_label('Y parameter [-]')
如果您想将其用作“背景”,您应该首先绘制您想要的任何内容。然后抓取底部绘图的范围并将其设置为范围imshow
。您还可以imshow
使用cmap=
.