#python #plotly #plotly-python
#python #plotly #plotly-python
Вопрос:
Я хочу, чтобы прямоугольная диаграмма была размещена поверх точечной диаграммы. Ни помещение сначала трассировки прямоугольника и добавление точечной диаграммы сверху, ни добавление атрибута «layer =’below'» приводит к желаемому результату. Блок всегда остается сзади. Есть предложения?
import plotly.graph_objects as go
import numpy as np
np.random.seed(10)
rand = np.random.uniform(-100, 100, 100)
fig = go.Figure()
fig.add_trace(go.Box(
x=rand,
name='Markers',
line_color='rgba(128, 128, 128, .0)',
fillcolor='darkgrey'
))
fig.add_trace(go.Scatter(
x=rand,
y=['Markers']*len(rand),
name='Markers',
mode="markers",
marker_color='orange',
marker_size=8,
# layer='below' # does not work
))
fig.show()
Ответ №1:
Как предлагается здесь, вы должны прикрепить прямоугольную диаграмму к другой оси:
fig = go.Figure()
fig.add_trace(go.Box(
x=rand,
name='Markers',
line_color='rgba(128, 128, 128, .0)',
fillcolor='darkgrey',
yaxis='y2'
))
fig.add_trace(go.Scatter(
x=rand,
y=['Markers']*len(rand),
name='Markers',
mode="markers",
marker_color='orange',
marker_size=8
# layer='below' # does not work
))
fig.update_layout(yaxis2=dict(
matches='y',
layer="above traces",
overlaying="y",
),)
fig.show()
Комментарии:
1. Вот и все! Большое спасибо 🙂