如何使用 ggplot2 更改 R 中条形图的 X 轴自动排序?


如果某个类别的频率明显高于其他类别,则使用 ggplot2 绘制的条形图的 X 轴标签会自动排序以交替显示这些值。我们可能希望保留分类变量中的原始类别顺序。因此,我们可以将分类变量存储为一个因子,然后创建条形图。

示例

考虑以下数据框架 -

> Group<-c("India","USA","UK","Germany")
> Frequency<-c(12,18,35,20)
> df<-data.frame(Group,Frequency)
> df
Group Frequency
1 India   12
2 USA     18
3 UK      35
4 Germany 20
> library(ggplot2)
> ggplot(df,aes(Group,Frequency))+geom_bar(stat="identity")

输出

在这里,我们可以看到 Germany 是 Group 变量中的最后一个类别,但我们希望使用变量中的相同顺序创建该绘图。这可以通过如下所示完成 -

> df$Group<-factor(df$Group, levels = df$Group)
> ggplot(df,aes(Group,Frequency))+geom_bar(stat="identity")

输出

更新于: 12-Aug-2020

1K+ 浏览

开启你的 职业生涯

完成课程获得认证

开始
广告