使用瀑布包。 如果我尝试换行长轴标签,标签会换行,但它们会按字母顺序排列,与数据无关。
无包装:
library(waterfalls)
waterfall(wf, calc_total=TRUE, rect_width=.4, fill_by_sign=TRUE,
total_rect_color="grey", rect_border=NA) +
labs(y="Cost", title ="Waterfall", x=NULL)
使用 str_wrap:
waterfall(wf, calc_total=TRUE, rect_width=.4, fill_by_sign=TRUE,
total_rect_color="grey", rect_border=NA) +
labs(y="Cost", title ="Waterfall", x=NULL) +
scale_x_discrete(labels = function(x) str_wrap(x, width = 10))
x 的比例已经存在。 为 x 添加另一个比例,这将取代现有的比例。
我也尝试过wrap_format,结果相同。
waterfall(wf, calc_total=TRUE, rect_width=.4, fill_by_sign=TRUE,
total_rect_color="grey", rect_border=NA) +
labs(y="Cost", title ="Waterfall", x=NULL) +
scale_x_discrete(labels = wrap_format(10))
我该如何解决这个问题?
将标签包裹在
waterfall
函数之前:
library(waterfalls)
library(tidyverse)
wf <- data.frame(factors = c('Start',
'Differential A',
'Move',
'EQ',
'Differential (Premium)',
'Transportation'),
cost = c(119.19, -25.4, -0.832, -5.7, 4.93, -7.37))
wf %>%
mutate(factors = str_wrap(factors, width = 10)) %>%
waterfall(calc_total=TRUE, rect_width=.4, fill_by_sign=TRUE,
total_rect_color="grey", rect_border=NA) +
labs(y="Cost", title ="Waterfall", x=NULL)