Python 是否可以更新.fill_betweenx()参数?怎么用?
我知道,可以通过将绘图艺术家与Python 是否可以更新.fill_betweenx()参数?怎么用?,python,matplotlib,Python,Matplotlib,我知道,可以通过将绘图艺术家与.set_xdata()和.set_ydata()一起使用来更新绘图的x和y值 可以用做类似的事情吗?fill_betweenx()来更新它的参数(y,x1,x2和where),以避免清除轴并再次绘制它?这有点像是一个黑客,对于PolyCollection有一个set\u path方法,该方法在返回之间fill\u,但它似乎不起作用。必须直接将新的路径分配给\u路径: from matplotlib.path import Path x = [0,2,3,4,5]
.set_xdata()
和.set_ydata()
一起使用来更新绘图的x和y值
可以用
做类似的事情吗?fill_betweenx()
来更新它的参数(y,x1,x2
和where
),以避免清除轴并再次绘制它?这有点像是一个黑客,对于PolyCollection
有一个set\u path
方法,该方法在返回之间fill\u,但它似乎不起作用。必须直接将新的路径
分配给\u路径
:
from matplotlib.path import Path
x = [0,2,3,4,5]
y = [1,4,5,6,7]
z = [4,5,6,7,8]
PC = plt.fill_between(x, y, z)
PC._paths = [Path(np.vstack([[1,1,2,3,4,5,5,5,4,3,2,1,1],
[4,3,4,5,6,7,8,8,7,6,5,4,4]]).T,
np.array([1,2,2,2,2,2,2,2,2,2,2,2,9]))]
以前
之后
您可能需要设置路径
,但它不太可能像更新绘图
实例那样简单。我不知道一种简单的方法可以做到这一点。到目前为止,我想到的最好方法是使用remove
方法仅从绘图中删除fill\u-between
艺术家,然后重新绘制fill\u-between
。至少,它没有清除斧头的全部内容。我想知道是否还有更好的方法。