我有两条由两组数组定义的曲线:(x1, y1)
和(x2, y2)
,我想用多边形填充它们之间。所有数组的长度都相同,但x1
和x2
包含不同的值。plt.fill_between(x, y1, y2)
要求两条曲线共享相同的x数组。
我如何做类似fill_between(x1, y1, x2, y2)
的事情?
例如,如果:x1 = np.array([1.0, 2.0, 3.0, 4.0, 5.0])
和y1 = np.array([3.0, 2.0, 3.0, 2.0, 3.0])
定义第一条曲线
和x2 = np.array([1.5, 2.5 ,3.5 ,4.5 , 5.5])
和y2 = np.array([5.0, 6.0, 7.0, 8.0, 9.0])
定义第二个。
如何使用四个多边形(左右边界不需要垂直)在曲线(x1, y1)
和(x2, y2)
之间填充颜色?
为了澄清,四个多边形(A,B,C,D)将具有坐标:
A: [(1.0, 3.0), (1.5, 5.0), (2.5, 6.0), (2.0, 2.0)]
B: [(2.0, 2.0), (2.5, 6.0), (3.5, 7.0), (3.0, 3.0)]
C: [(3.0, 3.0), (3.5, 7.0), (4.5, 8.0), (4.0, 2.0)]
D: [(4.0, 2.0), (4.5, 8.0), (5.5, 9.0), (5.0, 3.0)]
字符串
2条答案
按热度按时间idv4meu81#
我很难清楚地解释你的问题,但我认为你只是想使用
fill
,比如:字符串
会给你给予
的数据
dgjrabp22#
你可以使用多边形面片绘制四边形填充两条曲线之间的空间-唯一棘手的问题是定义多边形的5个点的生成,但是(ab)使用
zip
可以完成..你还需要知道如何在图上放置多边形,但是当你知道matplotlib.collections.PatchCollection
和ax.add_collection
时,这很容易字符串
x1c 0d1x的数据
正如你所看到的,它并不完美,但也许它足够好了。