【发布时间】:2019-10-18 00:21:41
【问题描述】:
能够就问题获得帮助。代码现已删除。
【问题讨论】:
-
你为什么不复制/粘贴数据,而不是给我们看一张图片呢?会更有用。
-
抱歉刚刚添加
标签: r ggplot2 dplyr geom-bar geom-col
能够就问题获得帮助。代码现已删除。
【问题讨论】:
标签: r ggplot2 dplyr geom-bar geom-col
数据
test <- data.frame(pass_location=c('middle','left','right'), Air_Epa_Play=c(0.263,0.086,0.082), YAC_Epa_Play=c(0.434,0.439,0.442), Total_Completed=c(0.697,0.525,0.524))
pass_location Air_Epa_Play YAC_Epa_Play Total_Completed
1 middle 0.263 0.434 0.697
2 left 0.086 0.439 0.525
3 right 0.082 0.442 0.524
您可以忽略 Total_Completed 列 - select(-Total_Completed)。 ggplot 为您进行叠加/求和,因此您不必自己计算总数。但是,ggplot 也喜欢长格式(而不是宽格式)的数据,因此您需要将gather() 相关值(在 y 轴上)放入单个列中。注意我使用gather(..., -pass_location) 来忽略分组列。在有和没有fill=var 的情况下尝试以下操作。一旦您看到 ggplot 喜欢长格式数据,使用它就会变得更加直观 - 至少对我来说是这样。
library(tidyverse)
test %>%
select(-Total_Completed) %>%
gather(var, value, -pass_location) %>%
ggplot(., aes(x=pass_location, y=value, fill=var)) +
geom_col()
【讨论】: