如何在R中重新排列geom_point ggplot2图?

时间:2019-07-31 00:34:58

标签: r ggplot2

我知道这种类型的问题已经问过很多次了,但是我找不到任何适合我的解决方案。

基本上,我正在尝试使用ggplot2的geom_point对图进行重新排序。这是我的数据框的示例:

> df

> Title: x1:x2, x2:x1, z:x1, x1:z
> 
> value: 64, 34, 21, 6

我想做的是使用ggplot按value从最低到最高对它们重新排序。

Titlefactor,而valuenum

这是我用来绘制的代码:

ggplot(df, aes(x=value, y=Title)) +
  geom_point(color="blue", size=4) 

我一直在尝试遵循其他示例,在这些示例中,他们说要点菜,例如:

df$value <- df[order(df$value), ]

,但是在重新排序df$value之后,ggplot将覆盖该顺序。实际上,我尝试绘制的顺序如下所示:

  

标题:x1:z,z:x1,x2:x1,x1:x2

     

值:6,21,34,64

有关如何解决此问题的任何建议?

1 个答案:

答案 0 :(得分:2)

最简单的解决方案是在reorder中使用ggplot。我认为Title应该是您的x轴变量。

df %>% 
  ggplot(aes(reorder(Title, value), value)) + 
  geom_point()

您还可以查看?forcats::fct_reorder