Я пытаюсь воссоздать этот сюжет Seaborn в Plotly: сюжет seaborn .
Мой фрейм данных имеет значения np.nan, а в Plotly линии тренда получаются странными: сюжетный сюжет . Например, красная диаграмма рассеяния показывает настроение персонажа, который появляется позже в телешоу (таким образом, для первых нескольких эпизодов значения в кадре данных равны np.nan). Если вы посмотрите только на красную линию тренда, вы увидите, что она не совпадает с красной диаграммой рассеяния.
Если я уберу значения np.nan, проблема исчезнет, но я не хочу этого делать, поскольку хочу, чтобы настроения совпадали с каждым эпизодом на x ось.
Как это исправить? Вот мой код:
import plotly.express as px
fig = px.scatter(df, x='episode', y='sentiment', color='character', trendline="lowess")
fig.show()
РЕДАКТИРОВАТЬ:
Мне предложили решение на форуме Plotly:
# Correct position of x points
for scatter, trendline in zip(fig.data[::2], fig.data[1::2]):
trendline['x'] = scatter['x'][np.logical_not(np.isnan(scatter['y']))]
fig.show()
Это должно быть исправлено в следующей версии plotly .py.