Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何控制条形图中条形之间的距离_Python_Python 3.x_Plotly - Fatal编程技术网

Python 如何控制条形图中条形之间的距离

Python 如何控制条形图中条形之间的距离,python,python-3.x,plotly,Python,Python 3.x,Plotly,我有两个产生sameme结果的代码,所以任何一个都可以用作答案 第一: import plotly.graph_objects as go fig = go.Figure() fig.add_trace(go.Bar( name='Group 1', x=['Var 1', 'Var 2', 'Var 3'], y=[3, 6, 4], error_y=dict(type='data', array=[1, 0.5, 1.5]), width=0.15 )) f

我有两个产生sameme结果的代码,所以任何一个都可以用作答案

第一:

import plotly.graph_objects as go

fig = go.Figure()
fig.add_trace(go.Bar(
    name='Group 1',
    x=['Var 1', 'Var 2', 'Var 3'], y=[3, 6, 4],
    error_y=dict(type='data', array=[1, 0.5, 1.5]),
    width=0.15
))
fig.add_trace(go.Bar(
    name='Group 2',
    x=['Var 1', 'Var 2', 'Var 3'], y=[4, 7, 3],
    error_y=dict(type='data', array=[0.5, 1, 2]),
    width=0.15
))
fig.update_layout(barmode='group')
fig.show()
第二:

import plotly.graph_objects as go

fig = go.Figure(data=[
    go.Bar(
            name='Group 1',
            x=['Var 1', 'Var 2', 'Var 3'], y=[3, 6, 4],
            error_y=dict(type='data', array=[1, 0.5, 1.5]),
            width=0.15),
    go.Bar(
            name='Group 2',
            x=['Var 1', 'Var 2', 'Var 3'], y=[4, 7, 3],
            error_y=dict(type='data', array=[0.5, 1, 2]),
            width=0.15)
])
# Change the bar mode
fig.update_layout(barmode='group')
fig.show()
它们看起来都像:




问题:如何控制不同组的条与不同变量的条之间的距离?

您需要两个属性。详情如下:

  • bargap-相邻位置坐标的钢筋之间的间隙
  • BARGOUP gap-相同位置坐标的钢筋之间的间隙
  • 但是这里有一个问题,如果设置
    width
    ,那么这两个属性都将被忽略。因此,从代码中删除width值并设置上述属性应该可以

    import plotly.graph_objects as go
    
    fig = go.Figure()
    fig.add_trace(go.Bar(
        name='Group 1',
        x=['Var 1', 'Var 2', 'Var 3'], y=[3, 6, 4],
        error_y=dict(type='data', array=[1, 0.5, 1.5])
    ))
    fig.add_trace(go.Bar(
        name='Group 2',
        x=['Var 1', 'Var 2', 'Var 3'], y=[4, 7, 3],
        error_y=dict(type='data', array=[0.5, 1, 2])
    ))
    fig.update_layout(barmode='group', bargap=0.30,bargroupgap=0.0)
    fig.show()