使用ggplot和r显示分类变量的分布

时间:2018-11-20 14:43:32

标签: r ggplot2 bar-chart

根据通用的钛酸数据集简化我的问题:

如何获取数据集中所有属性的以下图解enter image description here

如果可能的话,我也想获得每个类别的计数或百分比。

谢谢您的帮助。

尊敬的特普里

1 个答案:

答案 0 :(得分:3)

使用泰坦尼克号数据集,可以使用

library(tidyverse)
data("Titanic")

Titanic %>% 
  as.data.frame() %>%    # transform from a table to dataframe
  gather(variable, value, -Freq) %>%  # change to long format
  group_by(variable, value) %>% 
  summarise(Freq = sum(Freq)) %>% # get the freq for each level of each variable
  ggplot(aes(variable, Freq, fill = value)) + 
  geom_col(position = position_stack()) +
  geom_text(aes(label = paste0(value, " (", Freq, ")")), vjust = 1, 
            position = position_stack()) +
  theme(legend.position = "none")

enter image description here