You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在VS Code中用Plotly实现柱状图按元素列变色、加误差棒及改标签

解决方案

针对你的需求,以下是修改后的代码,同时实现基于Elements列设置柱状颜色、添加误差棒、修改图表标签三个功能:

实现说明

  1. 按Element设置不同颜色:为每个柱状图trace的marker_color传入与Elements长度匹配的颜色列表,每个元素对应专属颜色。
  2. 添加误差棒:在go.Bar中通过error_y参数配置,将你的Error列表传入array字段,同时可自定义误差棒的颜色等样式。
  3. 修改图表标签:通过update_layout设置图表标题、X轴和Y轴的标题,保留原有的分组柱状图布局和X轴标签旋转效果。

完整代码

import plotly.graph_objects as go

Elements = ["A", "B", "C", "D", "E", "F", "G", "H"]
Error = [0.2, 0.1, 0.05, 0.1, 0.2, 0.5, 0.1, 0.3]
# 定义与Elements对应的颜色列表,可按需替换颜色值
element_colors = ['#FF6B6B', '#4ECDC4', '#45B7D1', '#96CEB4', '#FFEAA7', '#DDA0DD', '#98D8C8', '#F7DC6F']

fig = go.Figure()

# 第一个柱状图系列
fig.add_trace(go.Bar(
    y=[0.1, 2, 5, 7, 5, 4, 1.5, 1.2],
    x=Elements,
    name='元素组1',
    marker_color=element_colors,
    error_y=dict(
        type='data',
        array=Error,
        visible=True,
        color='black'
    )
))

# 第二个柱状图系列
fig.add_trace(go.Bar(
    y=[3.3, 1.9, 0.2, 1.5, 2.1, 1.7, 3.7, 1.5],
    x=Elements,
    name='元素组2',
    marker_color=element_colors,
    error_y=dict(
        type='data',
        array=Error,
        visible=True,
        color='black'
    )
))

# 配置图表标签与布局
fig.update_layout(
    title='元素分组对比柱状图',
    xaxis_title='元素类型',
    yaxis_title='数值',
    barmode='group',
    xaxis_tickangle=-45
)

fig.show()

自定义提示

  • 颜色列表element_colors可替换为任意RGB/HEX颜色值,只需保证长度与Elements一致。
  • 误差棒的样式可通过error_y中的thickness(线宽)、width(误差帽宽度)等参数调整。
  • 图表标题和轴标签文本可根据实际场景修改。

内容的提问来源于stack exchange,提问作者hunny

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 07:20:36