其中一種可能性是爲您的測量創建散點圖並將條添加爲shapes
。使用connectgaps: False
和fill: tozeroy
的簡單解決方案在此處不起作用。
import plotly
plotly.offline.init_notebook_mode()
import plotly.graph_objs as go
meas_x = [20, 25, 27, 30, 31, 50, 56]
meas_y = [3, 3, 3, 10, 10, 2, 2]
meas_y.append('None')
meas_x.append('None')
trace1 = go.Scatter(
x=meas_x,
y=meas_y,
mode='markers'
)
shapes = list()
y = meas_y[0]
x = meas_x[0]
for i, m_y in enumerate(meas_y[1:]):
if y != m_y:
shapes.append({
'type': 'rect',
'x0': x,
'y0': 0,
'x1': meas_x[i],
'y1': meas_y[i - 1],
'fillcolor': '#d3d3d3',
})
y = m_y
x = meas_x[i + 1]
fig = {
'data': [trace1],
'layout': go.Layout(shapes=shapes)
}
plotly.offline.iplot(fig)
我想答案是**是**。也許使用'width = ...'?! – jojo
@jojo - 感謝您的簡要假設並嘗試幫助。爲了更好地說明我的問題,我上面進行了編輯。 –