这里有一个R新手,所以请原谅我,如果这最终成为一个令人尴尬的简单修复。我正在寻找一种方法让我的条形图显示ggplot2中的分类值计数。
我已经汇总了一些组成的样本数据:
@extends('layouts.' . $admin_theme . '.admin.admin')
使用以下代码绘制它:
ID Age SizeOfTumor RemovalSurgery
1 <30 Small No
2 <30 Large Yes
3 <30 Large No
4 <30 Small No
5 <30 Small No
6 <30 Large Yes
7 30-60 Large No
8 30-60 Large Yes
9 30-60 Large Yes
10 30-60 Small Yes
11 30-60 Small Yes
12 30-60 Small No
13 30-60 Large No
14 30-60 Small No
15 >60 Large Yes
16 >60 Large Yes
17 >60 Large Yes
18 >60 Small Yes
19 >60 Small No
20 >60 Large Yes
哪个搅拌出来 a pretty standard barchart
我想做的是能够将每个分类变量的数字添加到图表中,同时保留百分比。
任何建议都将不胜感激。我宁愿不必进入photoshop并手动输入所有标签。
答案 0 :(得分:4)
在这种情况下,我建议您自己进行总结,而不是让ggplot
为您完成。
library(ggplot2)
library(scales)
library(dplyr)
plot_data <- df %>%
count(SizeOfTumor, Age, RemovalSurgery) %>%
group_by(Age, SizeOfTumor) %>%
mutate(percent = n/sum(n))
ggplot(plot_data, aes(x = SizeOfTumor, y = percent, fill = RemovalSurgery)) +
geom_col(position = "fill") +
geom_label(aes(label = percent(percent)), position = "fill", color = "white", vjust = 1, show.legend = FALSE) +
scale_y_continuous(labels = percent) +
facet_grid(~Age)
我还在geom_label
包中添加了percent
scales
的y_axis和文字格式。