您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# 如何用R语言&EXCEL绘制瀑布图
## 一、什么是瀑布图?
瀑布图(Waterfall Chart)是一种特殊的数据可视化形式,用于展示**数值的累积变化过程**。它通过**分步显示正负贡献值**,直观呈现从初始值到最终结果的变化路径,常见于以下场景:
- 财务分析(利润构成、成本分解)
- 销售业绩追踪(月度增长/下降因素)
- 项目进度管理(阶段完成量)
- 库存变化分析

## 二、Excel绘制瀑布图(3种方法)
### 方法1:使用内置瀑布图(Office 2016+)
```excel
步骤:
1. 准备数据(需包含初始值、各变化值、最终值)
2. 选中数据 → 插入 → 图表 → 瀑布图
3. 右键设置"汇总柱"(通常为初始值和最终值)
优点:操作简单,自动配色
缺点:旧版Excel不支持
步骤:
1. 创建辅助列计算"起始位置":
- C2 = 0
- C3 = B2
- C4 = B2+B3
- ...(向下填充)
2. 插入堆积柱形图
3. 将"起始位置"系列设为无色
4. 手动调整颜色(增长/下降用不同颜色)
步骤:
1. 数据 → 获取数据 → 导入数据
2. 在Power Query中添加索引列
3. 使用"累计和"计算基准位置
4. 加载到模型后创建柱形图
library(ggplot2)
library(dplyr)
data <- data.frame(
category = c("Start", "Product A", "Product B", "Costs", "End"),
value = c(200, 50, -30, -70, 150) # 注意最后一个是总和
)
# 计算中间数据
plot_data <- data %>%
mutate(
ymin = cumsum(c(0, head(value, -1))),
ymax = cumsum(value),
fill_color = ifelse(value >= 0, "Increase", "Decrease")
)
ggplot(plot_data, aes(x = category)) +
geom_rect(aes(ymin = ymin, ymax = ymax,
xmin = as.numeric(category) - 0.3,
xmax = as.numeric(category) + 0.3,
fill = fill_color)) +
scale_fill_manual(values = c("Increase" = "#4E79A7",
"Decrease" = "#E15759")) +
labs(title = "Profit Analysis") +
theme_minimal()
install.packages("waterfalls")
library(waterfalls)
waterfall(values = c(200, 50, -30, -70),
labels = c("Start", "Product A", "Product B", "Costs"),
calc_total = TRUE)
library(plotly)
fig <- plot_ly(
name = "Start", type = "waterfall",
measure = c("absolute", "relative", "relative", "relative", "total"),
x = c("Start", "Product A", "Product B", "Costs", "End"),
y = c(200, 50, -30, -70, 150),
connector = list(line = list(color = "rgb(63, 63, 63)"))
)
fig <- fig %>% layout(title = "Interactive Waterfall Chart")
fig
library(ggalluvial)
ggplot(data = plot_data,
aes(x = category, stratum = value, alluvium = 1,
y = value, fill = fill_color)) +
geom_flow() +
geom_stratum(alpha = 0.8) +
scale_fill_brewer(palette = "Set1")
# 模拟数据
monthly <- data.frame(
month = month.abb[1:6],
profit = c(100, 20, -15, 30, -10, 25)
)
waterfall(monthly$profit, labels = monthly$month)
(Excel操作演示)
1. 创建成本项表格
2. 使用条件格式标注超支项
3. 添加数据验证下拉菜单
特性 | Excel | R语言 |
---|---|---|
学习曲线 | 简单 | 中等 |
自定义程度 | 有限 | 极高 |
交互性 | 静态 | 可交互 |
大数据支持 | 10万行限制 | 无限制 |
自动化程度 | 需手动更新 | 可脚本化 |
提示:实际应用时建议先用手稿画出草图,明确要展示的故事线,再选择合适工具实现。
”`
(注:实际使用时请将代码块中的中文引号替换为英文引号,此处为避免Markdown解析问题保留了中文标点)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。