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