Plotly 中同一 X 轴和 Y 轴上的多个条形图

我试图在同一个 x 轴和 y 轴上绘制多个条形图。我不想要堆叠或分组的条形图。我只想将多个条形图与长 x 轴并排放置,其中 x 轴刻度根据条形图和 y 轴的数量重复,y 轴沿条形图共享并放置在图形的最左侧.


这是我的代码,但它不会产生我想要的输出


import plotly.offline as pyo

import plotly.graph_objs as go

from plotly import tools




trace1 = go.Bar(

    x=[1, 2, 3],

    y=[10, 11, 12]

)

trace2 = go.Bar(

    x=[1, 2, 3],

    y=[100, 110, 120],

)

trace3 = go.Bar(

    x=[1, 2, 3],

    y=[1000, 1100, 1200],

)



fig = tools.make_subplots(rows=3, cols=1, specs=[[{}], [{}], [{}]],

                          shared_xaxes=True, shared_yaxes=True,

                          vertical_spacing=0.001)



fig.append_trace(trace1, 3, 1)

fig.append_trace(trace2, 2, 1)

fig.append_trace(trace3, 1, 1)


fig['layout'].update(height=600, width=600, title='')


pyo.plot(fig, filename='bar-charts-with-shared-axis.html')


任何帮助,将不胜感激


天涯尽头无女友
浏览 265回答 1
1回答

宝慕林4294392

如果我理解正确,你想要的是: 代码:import plotly.offline as pyoimport plotly.graph_objs as gofrom plotly import toolstrace1 = go.Bar(    x=[1, 2, 3],    y=[10, 11, 12])trace2 = go.Bar(    x=[1, 2, 3],    y=[100, 110, 120],)trace3 = go.Bar(    x=[1, 2, 3],    y=[1000, 1100, 1200],)fig = tools.make_subplots(rows=1, cols=3,                          shared_xaxes=True, shared_yaxes=True,                          vertical_spacing=0.001)fig.append_trace(trace1, 1, 1)fig.append_trace(trace2, 1, 2)fig.append_trace(trace3, 1, 3)fig['layout'].update(height=600, width=600, title='')pyo.plot(fig, filename='bar-charts-with-shared-axis.html')
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python