可能重复:
用 Python 绘图
我一直在使用 Matprolib 进行绘图。我发现它非常有用,但我不知道如何使用 'fill_between()' 函数。我已经尝试过多次修复它,但我无法直截了当。
我一直在研究几个教程,但我还没有找到非常有用的教程(根据我的任务)。
我的任务是填充所有线条共有的区域,就像这样:
这就是系统所做的:
有什么办法吗?任何人都知道如何以正确的方式使用“fill_between()”吗?
可能重复:
用 Python 绘图
我一直在使用 Matprolib 进行绘图。我发现它非常有用,但我不知道如何使用 'fill_between()' 函数。我已经尝试过多次修复它,但我无法直截了当。
我一直在研究几个教程,但我还没有找到非常有用的教程(根据我的任务)。
我的任务是填充所有线条共有的区域,就像这样:
这就是系统所做的:
有什么办法吗?任何人都知道如何以正确的方式使用“fill_between()”吗?
您可以使用该where
选项。如示例中所示,您可以执行以下操作:
fill_between(x, myzero, y1, where=y2>=y1, facecolor='blue', interpolate=True)
其中 y2 是有时在顶部的线。不过,您必须对每一行都执行此操作。
另一种选择是定义最少的函数并在其下方填充,尽管您需要事先知道 ys 是在相同点定义的,或者使用插值使它们都在相同点定义。
mymin = np.minimum(y1,y2,y3)
fill_between(x, myzero, mymin)
希望有帮助。
编辑:要从所有为相同 x 值定义的几个函数中找到最小值,您可以使用以下命令:
def OverallMinimum(*ys):
mymin = y[0].copy()
for y in ys:
min = np.minimum(mymin,y)
return mymin
然后您可以使用fill_between
上面的第二个在该函数的零和最小值之间绘制。