Python Plotly:多轴分组条形图

Python Plotly:多轴分组条形图,python,plot,bar-chart,plotly,multiple-axes,Python,Plot,Bar Chart,Plotly,Multiple Axes,当我在Layout中设置barmode='group'而trace2=Bar(…,yaxis='y2')时,这会导致堆叠或覆盖条带,而不是将它们分组。如何在具有多个轴的情况下对条进行分组 我看了这些,但没有用: 显示单Y轴分组条形图 还解释了多个轴,并提供了y轴的参考 以下是一个多轴分组条形图的示例: 相应的python代码可在此处找到: 希望这会有所帮助。对于现在看到这篇文章的人来说,plotly现在在条形图中有一个offsetgroup属性,可以解决这个问题。设置barmode='grou

当我在
Layout
中设置
barmode='group'
trace2=Bar(…,yaxis='y2')
时,这会导致堆叠或覆盖条带,而不是将它们分组。如何在具有多个轴的情况下对条进行分组

我看了这些,但没有用:

  • 显示单Y轴分组条形图
  • 还解释了多个轴,并提供了y轴的参考

以下是一个多轴分组条形图的示例:

相应的python代码可在此处找到:


希望这会有所帮助。

对于现在看到这篇文章的人来说,plotly现在在条形图中有一个
offsetgroup
属性,可以解决这个问题。设置
barmode='grouped'
仍然不起作用。

我希望下面基于的代码是自解释的,但是您必须在
go.Bar()
对象中设置
yaxis
offsetgroup
参数,以及
go.Figure()的
layout
参数中设置
yaxis2
参数
正确设置对象。代码如下:

import plotly.graph_objects as go
animals=['giraffes', 'orangutans', 'monkeys']

fig = go.Figure(
    data=[
        go.Bar(name='SF Zoo', x=animals, y=[200, 140, 210], yaxis='y', offsetgroup=1),
        go.Bar(name='LA Zoo', x=animals, y=[12, 18, 29], yaxis='y2', offsetgroup=2)
    ],
    layout={
        'yaxis': {'title': 'SF Zoo axis'},
        'yaxis2': {'title': 'LA Zoo axis', 'overlaying': 'y', 'side': 'right'}
    }
)

# Change the bar mode
fig.update_layout(barmode='group')
fig.show()
结果如下所示:


谢谢,但这里有两个单独的图表。我在寻找一个在单个x轴上只有两条轨迹的分组条(如zoo示例);两个y轴各在一侧,一个在左侧,一个在右侧,类似于第一个示例。这可能吗?谢谢我也有同样的问题,并且我在他们的web编辑器中测试了它,所以我填写了。不确定这是否只适用于某些后端,但JS组件是唯一具有公共bug跟踪器的组件。