Ciao all,
Я работаю с плотно.
Мне нужно нарисовать кривую и заполнить область под ней. Могут появиться некоторые NaN, и очень важно, чтобы в этом случае область не была заполнена.
Обратите внимание, что в моем случае 0 и NaN отличаются, так что установка NaN в 0 является решением дляпроблема области, которая не подходит для моего случая.
Я пытался использовать следующий код:
import plotly.graph_objs as go
from plotly.offline import plot
p = go.Scatter(x=range(0,12),
y = [1,2,3,np.nan, np.nan, np.nan, np.nan, np.nan, 0,0,0,5],
fill='tozeroy')
fig = go.Figure([p])
plot(fig, auto_open=True)
, но я получаю результат, который мне не нравится. Как вы можете видеть, нет точек, соответствующих NaN, так что в hovermode ничего не будет отображаться (мне это нравится!), Но есть область.
Я бы хотел достичь этого результата:
import plotly.graph_objs as go
from plotly.offline import plot
p1 = go.Scatter(x=range(0,3),
y = [1,2,3],
fill='tozeroy')
p2 = go.Scatter(x=range(8,12),
y = [0,0,0,5],
fill='tozeroy')
fig = go.Figure([p1, p2])
plot(fig, auto_open=True)
(Конечно, я хотел бы, чтобы сюжет имел толькоодин цвет и только один элемент в легенде.)
Можете ли вы помочь мне воспроизвести второй график, не разбивая кривую на несколько кривых?
Спасибо
ч