[英]Matplotlib fill between functionality
我在 matplotlib 的 senddex 教程中看到了 fill_between 的使用。 代码就像
import matplotlib.pyplot as plt
axis=plt.subplot2grid((1,1),(0,0)) #a and b are lists of equal sizes
axis.plot(a,b)
axis.fill_between(a,b,34,where=(b>34),facecolor='r',alpha=.5)
现在他的代码运行良好,他在输出中得到的东西在 b 中的值大于 34 的部分是彩色的。但同样给我带来了错误:
类型错误:“list”和“int”的实例之间不支持“>”
我找不到如何使用 where 功能
所以,我正在学习相同的教程,但遇到了同样的问题。 您需要导入 numpy 库,然后将您的列表转换为 numpy 数组,然后一切都会完美运行。
import matplotlib.pyplot as plt
import numpy
b = numpy.array(b)
axis=plt.subplot2grid((1,1),(0,0)) #a and b are lists of equal sizes
axis.plot(a,b)
axis.fill_between(a,b,34,where=(b>34),facecolor='r',alpha=.5)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.