我正在尝试仅在间隔中生成一个填充的图 我可以为区间设置一个边界,但使用2会给出错误消息:
这段代码可以使用
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 1, 500)
y = np.sin(4 * np.pi * x) * np.exp(-5 * x)
plt.plot(x,y)
plt.fill_between(x,0, y,where=x>0.25)
plt.show()
这段代码会出错
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 1, 500)
y = np.sin(4 * np.pi * x) * np.exp(-5 * x)
plt.plot(x,y)
plt.fill_between(x,0, y,where=0.5>x>0.25)
plt.show()
----> 7 plt.fill_between(x,0,y,其中= 0.5> x> 0.25) 8 plt.show()
ValueError:具有多个元素的数组的真值是不明确的。使用a.any()或a.all()
我无法弄清楚如何解决这个问题
答案 0 :(得分:0)
您可以使用布尔“和”:
plt.fill_between(x,0, y,where=(0.5>x) & (x>0.25))