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

如何为Plotly分组条形图的各组设置同色系渐变色调?

解决方案:为分组条形图设置绿色渐变色调

要实现2019-2022年对应条形从浅绿到深绿的渐变效果,你可以通过以下方式修改代码:

  1. 选用绿色系渐变色彩序列:利用Plotly内置的px.colors.sequential.Greens色阶,它包含从浅到深的完整绿色渐变,我们从中选取与年份数量(4个)匹配的颜色即可。
  2. 对齐年份与颜色的对应顺序:确保2019对应最浅的绿色,2022对应最深的绿色,避免颜色错位。

修改后的完整代码如下:

import pandas as pd
import plotly.express as px

# 构建数据
df_es_cons = pd.DataFrame({
    'Year':['2019','2019','2019','2020','2020','2020','2021','2021','2021','2022','2022','2022'],
    'Event consultation method': ['Face to face','unknown','Telephone','Face to face','unknown','Telephone','unknown','Face to face','Telephone','Face to face','unknown','Telephone'],
    'ES':[8677, 2681, 58, 3270, 2076, 911, 6507, 6272, 2008, 13846, 7455, 1128]
}) 

# 指定从浅到深的绿色序列(对应2019-2022)
green_gradients = px.colors.sequential.Greens[1:5]  # 跳过最浅的近乎白色,保留明显的绿色渐变

fig = px.bar(df_es_cons, 
             x='Event consultation method', 
             y='ES',
             color='Year', 
             color_discrete_sequence=green_gradients,
             barmode='group', 
             text_auto='.2s'
            )
fig.update_layout(title_text='咨询方式对应ES值统计(2019-2022)', title_x=0.5)
fig.show()

额外说明:

  • 若需要更个性化的绿色渐变,可手动指定颜色列表,例如:['#c7e9c0', '#a1d99b', '#41ab5d', '#238b45'],需遵循从浅到深的顺序对应2019到2022年。
  • 若年份排序出现混乱,可先将Year列转为有序类别:
    df_es_cons['Year'] = pd.Categorical(df_es_cons['Year'], categories=['2019','2020','2021','2022'], ordered=True)
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 14:05:30