Python Matplotlib问题

Python Matplotlib问题,python,plot,matplotlib,Python,Plot,Matplotlib,可能重复: 我一直在使用Matprolib进行绘图。我发现它非常有用,但我不知道如何确切地使用“fill_between()”函数。我已经试了好几次来解决它,但我都说不出重点 我一直在学习一些教程,但我没有找到非常有用的(根据我的任务) 我的任务是填充所有行的共同区域,如下所示: 这就是系统所做的: 有什么办法吗?有人知道如何正确使用“fill_between()”吗?您可以使用where选项。在中,您可以执行以下操作: fill_between(x, myzero, y1, where=

可能重复:

我一直在使用Matprolib进行绘图。我发现它非常有用,但我不知道如何确切地使用“fill_between()”函数。我已经试了好几次来解决它,但我都说不出重点

我一直在学习一些教程,但我没有找到非常有用的(根据我的任务)

我的任务是填充所有行的共同区域,如下所示:

这就是系统所做的:


有什么办法吗?有人知道如何正确使用“fill_between()”吗?

您可以使用
where
选项。在中,您可以执行以下操作:

fill_between(x, myzero, y1, where=y2>=y1, facecolor='blue', interpolate=True)
其中y2是有时位于顶部的线。不过,您必须对每一行执行此操作

另一个选项是定义最少的函数并在其下方填充,不过您需要事先知道Y是在相同的点上定义的,或者使用插值,以便它们都在相同的点上定义

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
,在该函数的零和最小值之间绘制曲线

是的,那会很有帮助。但我还有一个问题。行数并不总是相同的,例如,可以只有两行,也可以有5行。那么,我怎么能拥有无限数量的变量呢?有办法吗?感谢您可以编写一个快速函数,从多个函数中找到最小值,然后使用第二个选项。我将编辑以包含这样一个最小的函数。如果您喜欢我的答案,您可以通过单击复选标记来接受它。的副本