首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >曲线条件颜色下的Matplotlib区域

曲线条件颜色下的Matplotlib区域
EN

Stack Overflow用户
提问于 2020-06-23 06:35:02
回答 1查看 113关注 0票数 0

我尝试这样填充两个线条图之间的区域:

代码语言:javascript
复制
import matplotlib.pyplot as plt
import numpy as np


ROCE = np.array([-7.0,-14.0,-11.0,8.0,7.0,17.0,10.0,9.0])
WACC = np.array([4.5, 5.1, 4.7, 3.4, 2.9, 3.7, 3.6, 3.9])
YEAR = np.array([2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019])

fig, ax = plt.subplots(1,1)
ax.plot(YEAR, ROCE, color = 'blue')
ax.plot(YEAR, WACC, color = 'black')
ax.fill_between(YEAR, ROCE, WACC, where=ROCE >= WACC, facecolor='green')
ax.fill_between(YEAR, ROCE, WACC, where=ROCE <= WACC, facecolor='red')

然而,我有一个问题,在点的线交叉,可以看到在附加的图像。我想我必须对线点进行插值。你知道怎么解决这个问题吗?

谢谢!

Plot

EN

回答 1

Stack Overflow用户

发布于 2020-06-23 07:02:05

默认情况下,fill_between仅查看给定值。但它还可以选择插值,以找到where参数的确切交叉点。

代码语言:javascript
复制
import matplotlib.pyplot as plt
import numpy as np

ROCE = np.array([-7.0,-14.0,-11.0,8.0,7.0,17.0,10.0,9.0])
WACC = np.array([4.5, 5.1, 4.7, 3.4, 2.9, 3.7, 3.6, 3.9])
YEAR = np.array([2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019])

fig, ax = plt.subplots(1,1)
ax.plot(YEAR, ROCE, color = 'blue')
ax.plot(YEAR, WACC, color = 'black')
ax.fill_between(YEAR, ROCE, WACC, where=ROCE >= WACC, interpolate=True, facecolor='green')
ax.fill_between(YEAR, ROCE, WACC, where=ROCE <= WACC, interpolate=True, facecolor='red')
plt.show()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62524563

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档