如何将ggplot2中的轴转换为百分比刻度
您可以使用以下基本语法将 ggplot2 中的轴转换为百分比刻度:
+ scale_y_continuous(labels = scales::percent)
以下示例展示了如何在实践中使用此语法。
示例:将 ggplot2 中的轴转换为百分比刻度
假设我们在 R 中有以下数据框,显示四个不同商店返回的商品的百分比:
#create data frame
df <- data. frame (store=c('A', 'B', 'C', 'D'),
returns=c(.14, .08, .22, .11))
#view data frame
df
store returns
1 A 0.14
2 B 0.08
3 C 0.22
4 D 0.11
现在假设我们在 ggplot2 中创建一个条形图来可视化每个商店的退货百分比:
library (ggplot2)
#create bar chart
ggplot(data=df, aes(x=store, y=returns)) +
geom_bar(stat=' identity ')
默认情况下,ggplot2 使用小数位在 y 轴上显示值。
但是,我们可以使用以下语法将 y 轴更改为百分比刻度:
library (ggplot2)
#create bar chart with percentages on y-axis
ggplot(data=df, aes(x=store, y=returns)) +
geom_bar(stat=' identity ') +
scale_y_continuous(labels = scales::percent)
Y 轴现在有百分比刻度。
默认情况下,显示一位小数。但是,我们可以使用precision参数来删除 y 轴上的小数位:
library (ggplot2)
#create bar chart with percentages on y-axis
ggplot(data=df, aes(x=store, y=returns)) +
geom_bar(stat=' identity ') +
scale_y_continuous(labels = scales::percent_format(accuracy= 1 ))
y 轴现在显示为百分比,没有任何小数位。
其他资源
以下教程解释了如何在 ggplot2 中执行其他常用功能:
如何删除ggplot2中的图例
如何删除ggplot2中的网格线
如何在ggplot2中旋转轴标签