R-使用GGPLOT2中GEOM_POINT中的重新订购函数



r的初学者,这是我的初学者问题:我想知道如何在geom_point中使用重新排序函数

如果我运行代码(下图(,则图将根据" split_time"列中第一个数字的数字1,2,3,5排列x轴,而不是我想要的顺序: m_5,m_10,m_20,m_30

这里的适当更改是什么?

这是我的数据集:

Group Split_time ES 
Heavy m_5 -0.753006245 
Heavy m_10 -0.946046493 
Heavy m_20 -0.766883256
 Heavy m_30 -0.6175288 
Optimal m_5 -1.041742539 
Optimal m_10 -1.253699539
 Optimal m_20 -1.153807339
 Optimal m_30 -1.179895776 
Control m_5 -0.503250366 
Control m_10 -0.476303945 
Control m_20 -0.543155436
 Control m_30 -0.54148328

代码:

ggplot(SledESsplittimes2, aes(x = Split_time, y = ES, col = Group)) + geom_point()

这是因为该列是类型字符,并且当字符被排序时," 1"是在" 5"(so" m_10"之前(。

用于分类变量的R中的数据类型称为"因子"。在https://www.stat.berkeley.edu/~s133/factors.html和https://www.rdocumentation.org/package/packages/base/base/3.6.6.0/topics/topics/topics/factor 您的情况下,您可以将Split_time转换为一个因素,并按照您喜欢它们的顺序指定级别。

df$Split_time = factor(df$Split_time, levels = c("m_5", "m_10", "m_20", "m_30"))

这样做后,ggplot也将根据其级别订购该因子,M_5在M_10

之前到了

相关内容

最新更新