python - 如何控制条形图中条形之间的距离
问题描述
我有两个产生相同结果的代码和平,所以任何一个都可以用来回答。
第一的:
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()
问题:如何控制不同组的条形和不同Vars的条形之间的距离?
解决方案
您要求有 2 个属性。它们如下:
- bargap - 相邻位置坐标的条之间的间隙。
- bargroupgap - 相同位置坐标的条之间的间隙。
但是这里有一个问题,如果你设置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()
推荐阅读
- javascript - 我如何将 ajax alrt 自定义为模态
- javascript - 请求 API 时循环页面
- r - 我想要具有连续多个输入的 Shiny UI
- java - 第二次单击后如何在画布上绘制形状
- split - 使用#standardsql 的 Google Big Query SPLIT() 函数
- android - 如何使用retrofit2解析对象而不是数组
- database - 大学的数据库设计。数据库设计问题
- javascript - 无法访问子组件中的 class.contextType
- scala - 捕获异常对象是否安全
- django - 提交表单后如何通知超级用户更改另一个用户的类别?