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

Plotly堆叠条形图绘制异常求助:负值未显示且数据坍塌

解决Plotly堆叠条形图中负值不显示的问题

你的问题出在**barmode='stack'的默认行为**:当数据包含正负混合值时,plotly会将同一x类别下的所有y值直接累加,导致正值和负值相互抵消,最终部分数据(尤其是负值序列)看起来“消失”了。

修复方案

使用barmode='relative'替代stack,这个模式会分别堆叠正值和负值,避免正负抵消,同时保留堆叠条形图的视觉效果:

plotly::plot_ly(df, x=~TimePeriod, y=~round(DataValue_per_GDP*100,2), 
    color=~Sectors, type = "bar") %>% 
    layout(xaxis = list(title = ""), yaxis = list(title = "(% of GDP)"), barmode = 'relative')

补充说明

如果你的需求是严格的“堆叠”(即所有条形从同一基线开始),那需要先对数据做预处理:将正值和负值的Sectors分开,分别绘制两组堆叠条形图,再调整布局对齐。但relative模式是处理正负混合堆叠的最简便方式,能完美呈现所有正负序列的占比情况。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 07:05:20