fill_between与fill_betweenx matplotlib之间的区别

4

我不太理解如何在matplotlib中使用fill_betweenx()。它与fill_between()有什么不同?在阅读了fill_betweenx()的文档之后,我尝试着去实现:

x=np.linspace(0,2*3.14,50)

y=np.sin(x)

plt.figure(figsize=(10,5))

plt.fill_betweenx(y,2,3,color='b')

plt.plot(x,y)

根据我的理解,应该使用蓝色填充x=2和x=3之间的正弦曲线,但是我得到的结果是:。有人能解释一下为什么没有填充吗?
1个回答

9

看起来你想填充正弦曲线,例如在 y=0 和正弦曲线之间。你可以使用 where 来限制填充的 x 坐标范围。

import matplotlib.pyplot as plt
import numpy as np

x=np.linspace(0,2*3.14,50)
y=np.sin(x)

plt.fill_between(x,y,0,where=(x>2) & (x<=3),color='b')
plt.plot(x,y)

输入图像描述

相反,如果您想要在x方向上填充曲线之间的区域,则可以使用fill_betweenx。例如:

plt.fill_betweenx(x,y,where=(x>2) & (x<=3), color='b')
plt.plot(y,x)

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接