use*_*220 13 python plot matplotlib fill
我正在寻找一种在matplotlib中使用fill_between来遮蔽x1和x2而不是y1和y2的方法.
我有一系列的对数图,在Y轴上有深度,在x轴上有测量变量,并且想要绘制线的左侧或右侧,而不是上方或下方.
我确信这应该可以使用fill_between但不能使它工作.
举个例子:
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
gs = gridspec.GridSpec(3, 3)
ax1 = plt.subplot(gs[0, :])
ax2 = plt.subplot(gs[1:, 1])
y=np.random.uniform(0,1,30)
x=np.arange(30)
ax1.set_ylabel('Plot 1')
ax1.plot(x,y)
ax1.fill_between(x,y,0.5,where=y>0.5,interpolate=True)
ax2.set_ylabel('Plot 2')
ax2.plot(y,x)
ax2.set_ylim(30,0)
plt.show()
Run Code Online (Sandbox Code Playgroud)
我附上了这个产生的图像:基本上我想在情节2位置绘制类似情节1的东西
谢谢你的任何建议
Fra*_*ano 22
您可以使用 fill_betweenx
ax2.fill_betweenx(y,x, x2=0.5, where=x>0.5,interpolate=True)
Run Code Online (Sandbox Code Playgroud)