ggplot2:如何固定geom_bar的x轴顺序

我是R的新手,我已经使用ggplot2制作了条形图,但是当它绘制沿x轴的月份变化顺序时,它会显示。不知道如何编写代码来防止这种情况的发生以及如何沿x轴以正确的顺序获取月份。

df<-data.frame(month=c("May","June","July","August","September","October","November"),cpue=c(2.40,4.20,6.16,5.25,3.32,2.33,0.91))

ggplot(data=df,aes(x=month,y=cpue))+geom_bar(stat="identity",width=0.5,fill="black")+labs(x="Month",y="CPUE")+theme(axis.text=element_text(size=12),axis.title=element_text(size=14),axis.line=element_line(colour="black"),panel.grid.major = element_blank())
Murphy_zhu_qiang 回答:ggplot2:如何固定geom_bar的x轴顺序

它不是随机改变x轴,而是试图按字母顺序放置x轴。

一个简单的解决方法是使您的df使用关卡定购。

df <- data.frame(month=c("May","June","July","August","September","October","November"),cpue=c(2.40,4.20,6.16,5.25,3.32,2.33,0.91))

现在已经完成了您的df操作,我们可以轻松地调整列的水平度,我们将使用x轴,在这种情况下,我们将使用月份列:

df$month <- factor(df$month,levels = df$month)

现在,当我们绘制条形图时,它的顺序与我们从数据框中提供的顺序相同。

  ggplot(data=df,aes(x=month,y=cpue)) + 
  geom_bar(stat="identity",width=0.5,fill="black") + 
  labs(x="Month",y="CPUE") + 
  theme(axis.text=element_text(size=12),axis.title=element_text(size=14),axis.line=element_line(colour="black"),panel.grid.major = element_blank())

希望这会有所帮助!

本文链接:https://www.f2er.com/3095150.html

大家都在问