通过ggplot更改级别顺序

时间:2018-10-06 17:08:51

标签: r ggplot2

我正在尝试通过教程here学习软件包cregg。本教程工作正常。但是,当我尝试更改功能的默认设置时遇到问题。看起来像绘图时,图例的级别和coef点的顺序是按字母顺序或数字顺序。我的问题是,当我尝试两种方法时:一种是通过ggplot函数,另一种是预先更改级别的顺序以将顺序更改为31524,这两种方法都不起作用。原始代码如下:

data("immigration")
stacked <- cj(immigration, ChosenImmigrant ~ Gender +
          Education + LanguageSkills + CountryOfOrigin + Job + JobExperience +
          JobPlans + ReasonForApplication + PriorEntry, id = ~ CaseID,
          estimate = "mm", by = ~ contest_no)
plot(stacked, group = "contest_no", feature_headers = FALSE)

我的问题是如何在情节和图例中确定contest_no的级别顺序。我发现的一件事是,contest_no的级别顺序似乎首先由函数cj确定(您可以通过stacked[["contest_no"]]进行检查)。谢谢!

1 个答案:

答案 0 :(得分:1)

感谢@Tung!(我知道我留下了类似的评论,但我仍然想回答这个问题并关闭它)答案很简单明了,但我并不完全认为。在我的问题中,我有一个答案,但我不知道为什么我没有看到它。由于stacked[["contest_no"]]可以显示stacked[["contest_no"]]的级别顺序,因此我只需按stacked[["contest_no"]] <- factor(stacked[["contest_no"]], levels=c(3, 1, 5, 2, 4))更改顺序,然后绘制stacked的整个对象。很好。