R 在ggplot2中固定x轴顺序
我有以下数据R 在ggplot2中固定x轴顺序,r,ggplot2,R,Ggplot2,我有以下数据 dftmp z.transient kprimes groupname 1 -1.244061 10 k=9.8,p=56.4 2 -0.995249 20 k=9.8,p=56.4 3 -0.746437 30 k=9.8,p=56.4 4 -0.497625 40 k=9.8,p=56.4 5 -0.248812 50 k=9.8,p=56.4 6
dftmp
z.transient kprimes groupname
1 -1.244061 10 k=9.8,p=56.4
2 -0.995249 20 k=9.8,p=56.4
3 -0.746437 30 k=9.8,p=56.4
4 -0.497625 40 k=9.8,p=56.4
5 -0.248812 50 k=9.8,p=56.4
6 0 60 k=9.8,p=56.4
7 0.248812 70 k=9.8,p=56.4
8 0.497625 80 k=9.8,p=56.4
9 0.746437 90 k=9.8,p=56.4
10 0.995249 100 k=9.8,p=56.4
11 1.244061 110 k=9.8,p=56.4
12 -1.244061 100 k=103.2,p=155.5
13 -0.995249 200 k=103.2,p=155.5
14 -0.746437 300 k=103.2,p=155.5
15 -0.497625 400 k=103.2,p=155.5
16 -0.248812 500 k=103.2,p=155.5
17 0 600 k=103.2,p=155.5
18 0.248812 700 k=103.2,p=155.5
19 0.497625 800 k=103.2,p=155.5
20 0.746437 900 k=103.2,p=155.5
21 0.995249 1000 k=103.2,p=155.5
22 1.244061 1100 k=103.2,p=155.5
23 -1.244061 1000 k=786.9,p=849
24 -0.995249 2000 k=786.9,p=849
25 -0.746437 3000 k=786.9,p=849
26 -0.497625 4000 k=786.9,p=849
27 -0.248812 5000 k=786.9,p=849
28 0 6000 k=786.9,p=849
29 0.248812 7000 k=786.9,p=849
30 0.497625 8000 k=786.9,p=849
31 0.746437 9000 k=786.9,p=849
32 0.995249 10000 k=786.9,p=849
33 1.244061 11000 k=786.9,p=849
我想用ggplot2来绘制它
p <- ggplot(dftmp, aes(x=z.transient, y=kprimes, group=groupname))
p <- p + geom_line(aes(colour=groupname), size=2)
p <- p + scale_y_log10()
p那是因为你的z.transient
是你所说的一个因素。在我看来,这是一个连续变量不是吗?如果是,请将其从系数转换为值(请参见?系数)
然后按照你的绘图步骤
就轴的限制而言,应该将您引导到正确的方向。您真的希望x轴是明确的吗?既然它是数字,为什么不把它画成连续变量呢?制作一个列,as.numeric(as.character(z.transient))
并将你的x美学映射到它。你是对的,我不希望它成为一个因素。我一直用你的代码来解构事物,但它看起来像是一个黑客。很高兴知道我不是唯一的一个。
dftmp$z.transient <- as.numeric(levels(dftmp$z.transient))[dftmp$z.transient]
dftmp <- read.table('clipboard')