如何在ggplot2中按字母顺序对y轴标签进行排序
您可以使用以下基本语法在 ggplot2 中按字母顺序对 Y 轴标签进行排序:
#sort y-axis variable in alphabetical order df$y_var<- factor(df$y_var, levels=rev(sort(df$y_var))) #create scatter plot with y-axis in alphabetical order ggplot(df, aes(x=x_var, y=y_var)) + geom_point()
以下示例展示了如何在实践中使用此语法。
示例:在 ggplot2 中按字母顺序对 Y 轴标签进行排序
假设我们在 R 中有以下数据框,显示不同篮球队的得分:
#create data frame
df <- data. frame (team=c('B', 'D', 'E', 'F', 'A', 'C', 'H', 'G'),
points=c(22, 12, 10, 30, 12, 17, 28, 23))
#view data frame
df
team points
1 B 22
2 D 12
3 E 10
4 F 30
5 to 12
6 C 17
7:28 a.m.
8 G 23
如果我们创建一个散点图,其中 x 轴上有点,y 轴上有一个团队,ggplot2 将自动按字母顺序显示团队(从底部开始):
library (ggplot2) #create scatterplot ggplot(df, aes(x=points, y=team)) + geom_point(size= 2 )
请注意,Y 轴上的标签从底部开始按字母顺序从 A 到 Z 列出。
要按相反的字母顺序排列 Y 轴标签,我们可以使用以下代码:
library (ggplot2) #sort y-axis variable in alphabetical order df$team<- factor(df$team, levels=rev(sort(df$team))) #create scatter plot with y-axis in alphabetical order ggplot(df, aes(x=points, y=team)) + geom_point()
请注意,Y 轴上的标签现在从底部开始按字母顺序逆序排列。
其他资源
以下教程解释了如何在 ggplot2 中执行其他常见任务:
如何在ggplot2中旋转轴标签
如何在ggplot2中设置轴中断
如何在ggplot2中设置轴限制
如何更改ggplot2中的图例标签