Заполнение между кривыми только тогда, когда данная кривая больше другой - PullRequest
0 голосов
/ 12 ноября 2019

Когда я пытаюсь заполнить две кривые, например, следующим образом:

import numpy as np
import matplotlib.pyplot as plt

X=np.linspace(-3.,3.,100)
Y= X**2
plt.fill_between(X,1.,Y,color='red',alpha=0.4)

plt.show()

Заполнение выполняется между двумя кривыми, независимо от того, какая из них имеет большие значения. Можно ли указать, что я хочу заливку только тогда, когда одна из двух кривых (скажем, Y) больше другой?

Ответы [ 2 ]

1 голос
/ 12 ноября 2019

добавить условный оператор к вашему fill_between

... fill_between (... where = (Y> X) ...)

вы также можете добавить секунду с другимцвет, чтобы указать, X> Y

0 голосов
/ 12 ноября 2019

это можно сделать с помощью параметра where следующим образом

plt.fill_between(X,1.,Y,color='red',alpha=0.4,where=Y>1.)

...