我正在处理一个具有季度任务的数据集,并且我试图通过一个快速表达的冰柱图表来可视化它。数据的结构方式是这样的:
客观的 | 四分之一 | 任务 | 地位 | 价值 |
---|---|---|---|---|
完成项目 A | 1 | 排序数据 | 完全的 | 1 |
完成项目 A | 2 | 清理数据 | 完全的 | 1 |
完成项目 A | 2 | 可视化绘图 | 完全的 | 1 |
完成项目 A | 3 | 开始报告 | 进行中 | 1 |
完成项目 A | 3 | 编辑报告 | 还没开始 | 1 |
完成项目 B | 1 | 电子邮件老板 | 还没开始 | 1 |
问题出在图表中,即使使用这种格式读取数据,它也会根据对应于该季度的行数对其进行排序。因此,在图中,项目 a 的第 2 季度和第 3 季度将排在第一位,而第 1 季度则排在最后。我想把它翻转过来,使它按照季度的顺序排列,即 Q1->Q2->Q3->Q4,但我似乎找不到在情节表达中做到这一点的好方法。以下是我目前正在使用的代码:
fig = px.icicle(df, path=['Objective','Quarter','Task','Status'], values='Value', color='Status',
color_discrete_map={'Haven't started':'red','In Progress':'yellow','Complete':'green'},
maxdepth=3
)
我遇到的另一个问题是,我将它按状态列着色,但每当一个季度的混合状态不是全部一个状态(即全部完成或进行中)时,它默认为紫色,即其余单元格基本上不可读。有没有办法可以更改默认颜色,而不会丢失状态的颜色?