与ggplot2 geom_bar分组的条形图是绘制比例而不是计数

问题描述 投票:0回答:1

我正在尝试绘制一个分组条形图(x,y由另一个变量),但我得到一个比例图形(0-1)而不是计数,所有条形都变为1.我很困惑,因为代码似乎是正确的(使用统计身份和位置闪避)

我已经尝试过对变量进行分解,但是不起作用。数据框格很长。

ggplot(supra.long, aes(condition, measurement, fill = MODE)) +
  geom_bar(position = 'dodge', stat = "identity") 

当我绘制这一小部分数据时,得到了相同的结果:

 A tibble: 6 x 3

condition measurement MODE 
  <chr>           <dbl> <chr>

INTACT              1 US   
INTACT              0 US   
INTACT              1 US   
FT                  0 MRI  
FT                  1 MRI  
FT                  0 MRI 

我期待y轴上的计数图,但是比例尺上的条都是1。

r ggplot2 geom-bar
1个回答
0
投票

我可能要么在绘制数据之前总结数据并使用“身份”统计数据。

library(dplyr)
condition <- c("INTACT","INTACT","INTACT","FT","FT","FT")
measurement <- c(1,0,1,0,1,0)
MODE <- c("US","US","US","MRI","MRI","MRI")
supra.long <- data.frame(condition, measurement, MODE) %>%
  group_by(condition, MODE) %>%
  summarise(count = sum(measurement))

ggplot(supra.long) +
  geom_bar(aes(x=condition, y=count, fill = MODE), position = 'dodge', stat = "identity") 

或者我会过滤掉零并使用“计数”统计信息。

supra.long <- data.frame(condition, measurement, MODE) %>% filter(measurement > 0)
ggplot(supra.long) +
  geom_bar(aes(x=condition,fill = MODE), position = 'dodge', stat = "count") 

希望有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.