如何在 R 中使用 ggplot2 创建 Y 轴上带有百分比的条形图?

r programmingserver side programmingprogramming更新于 2025/4/15 17:37:17

大多数情况下,条形图都是以任何方式在 Y 轴上创建频率或计数的,无论是手动还是使用任何软件或编程语言,但有时我们想使用百分比。可以使用 R 中的 scales 包来完成,它为我们提供了选项 labels=percent_format() 来将标签更改为百分比。

示例

考虑下面的数据框 −

> x<-sample(1:4,20,replace=TRUE)
> df<-data.frame(x)
> df

输出

 x
1 2
2 3
3 3
4 1
5 2
6 4
7 4
8 4
9 2
10 3
11 3
12 4
13 3
14 4
15 4
16 1
17 3
18 1
19 4
20 1

加载 ggplot2 包并创建条形图 −

> library(ggplot2)
> ggplot(df,aes(x))+geom_bar()

输出

加载 scales 包并创建 Y 轴上有百分比的条形图 −

示例

> library(scales)
>
ggplot(df,aes(x))+geom_bar(aes(y=(..count..)/sum(..count..)))+scale_y_continuous(labels
=percent_format())

输出


相关文章