Я не могу понять, как использовать fill_betweenx()
в matplotlib. Чем он отличается от fill_between()
? После прочтения документации fill_betweenx()
я попытался ее реализовать:
x=np.linspace(0,2*3.14,50)
y=np.sin(x)
plt.figure(figsize=(10,5))
plt.fill_betweenx(y,2,3,color='b')
plt.plot(x,y)
По моему пониманию, он должен был заполнить кривую синуса между x = 2 и x = 3 синим цветом, но я получил:
Может ли кто-нибудь объяснить мне, почему он не был заполнен?
Кажется, вы хотите заполнить кривую синуса, например, между y = 0 и синусом. Вы можете ограничить это заполнение диапазоном координат x, используя where
.
import matplotlib.pyplot as plt
import numpy as np
x=np.linspace(0,2*3.14,50)
y=np.sin(x)
plt.fill_between(x,y,0,where=(x>2) & (x<=3),color='b')
plt.plot(x,y)
В отличие от этого, вы должны использовать fill_betweenx
если хотите заполнить кривую в направлении x. Например
plt.fill_betweenx(x,y,where=(x>2) & (x<=3), color='b')
plt.plot(y,x)