Извините заранее за длинный пост. Я новичок в python и в заговоре, поэтому, пожалуйста, потерпите меня.
Я пытаюсь создать диаграмму рассеяния с линией тренда, чтобы показать мне легенду о графике, включая параметры регрессии, но для некоторых причина, по которой я не могу понять, почему px.scatter
не показывает мне легенду моего следа. Вот мой код
fig1 = px.scatter(data_frame = dataframe,
x="xdata",
y="ydata",
trendline = 'ols')
fig1.layout.showlegend = True
fig1.show()
Это отображает график рассеяния и линию тренда, но без легенды, даже когда я пытался переопределить его.
Я использовал pio.write_json(fig1, "fig1.plotly")
, чтобы экспортировать его в диаграмму jupyterlab. Studio и добавьте легенду вручную, но даже если я включил ее, она не будет отображаться в диаграмме Studio.
Я напечатал переменную с print(fig1)
, чтобы увидеть, что происходит, это (часть) результат
(Scatter({
'hovertemplate': '%co=%{x}<br>RPM=%{y}<extra></extra>',
'legendgroup': '',
'marker': {'color': '#636efa', 'symbol': 'circle'},
'mode': 'markers',
'name': '',
'showlegend': False,
'x': array([*** some x data ***]),
'xaxis': 'x',
'y': array([*** some y data ***]),
'yaxis': 'y'
}), Scatter({
'hovertemplate': ('<b>OLS trendline</b><br>RPM = ' ... ' <b>(trend)</b><extra></extra>'),
'legendgroup': '',
'marker': {'color': '#636efa', 'symbol': 'circle'},
'mode': 'lines',
'name': '',
'showlegend': False,
'x': array([*** some x data ***]),
'xaxis': 'x',
'y': array([ *** some y data ***]),
'yaxis': 'y'
}))
Как мы видим, создание фигуры с px.scatter
по умолчанию скрывает легенду при наличии единственного следа (я экспериментировал с добавлением свойства color
к px.scatter
, и он показал Легенда) и при поиске в документации px.scatter
я не могу найти что-то, связанное с переопределением параметра легенды.
Я вернулся к экспортированному файлу (fig1.plotly. json) и вручную изменил showlegend
записей в True
, и тогда я смог увидеть легенду в диаграммной студии, но должен быть какой-то способ сделать это непосредственно из команды.
Вот вопрос: кто-нибудь знает способ настроить объекты px. express graphi c?
Другой обходной путь, который я вижу, - это использовать создание объектов низкоуровневого графического графика, но тогда я не знаю, как добавить линию тренда.
Еще раз спасибо за прочтение всего этого.