R ggplot2 连接点不是按 x 轴而是按因子
R ggplot2 connecting points NOT by x-axis but by factor
我有一个从 vegan metaMDS 中提取的 data.frame,它看起来像这样:
MDS1 MDS2 time nucleic_acid habitat treatment
10dnawatercontrol 0.06297458 0.153364604 10 dna water control
10dnawatertreated -0.20010385 -0.241614081 10 dna water treated
11dnawatercontrol 0.15518683 0.067861388 11 dna water control
11dnawatertreated -0.12137470 -0.258434255 11 dna water treated
12dnawatercontrol -0.02041011 0.140458063 12 dna water control
12dnawatertreated -0.36101682 -0.110667764 12 dna water treated
13dnawatercontrol -0.19054474 0.287597321 13 dna water control
13dnawatertreated -0.26751484 -0.092326331 13 dna water treated
14dnawatercontrol -0.10942501 0.208263588 14 dna water control
14dnawatertreated -0.33594573 0.015625565 14 dna water treated
15dnawatercontrol -0.06631137 0.226240078 15 dna water control
15dnawatertreated -0.27606083 -0.019999889 15 dna water treated
16dnawatercontrol 0.01703248 0.132900239 16 dna water control
16dnawatertreated -0.32565421 -0.022154859 16 dna water treated
17dnawatercontrol -0.25806806 0.201731201 17 dna water control
17dnawatertreated -0.40662186 -0.003830044 17 dna water treated
18dnawatercontrol -0.17699110 0.184587876 18 dna water control
18dnawatertreated -0.46597548 -0.022633769 18 dna water treated
19dnawatercontrol -0.28119311 0.197837800 19 dna water control
19dnawatertreated -0.62468238 0.187704606 19 dna water treated
4dnawatercontrol 1.23658067 0.660553669 4 dna water control
4dnawatertreated 0.85195731 -0.740790358 4 dna water treated
5dnawatercontrol 0.66159385 0.183955243 5 dna water control
5dnawatertreated 0.36367763 -0.446656965 5 dna water treated
6dnawatercontrol 0.19736034 0.206992740 6 dna water control
6dnawatertreated -0.04189317 -0.273487207 6 dna water treated
7dnawatercontrol 0.35362061 -0.005658852 7 dna water control
7dnawatertreated 0.14481323 -0.409432041 7 dna water treated
8dnawatercontrol 0.30718548 0.072991390 8 dna water control
8dnawatertreated 0.13210812 -0.311147579 8 dna water treated
9dnawatercontrol 0.20028730 0.065109821 9 dna water control
9dnawatertreated -0.15459106 -0.234941197 9 dna water treated
我正在用 ggplot2 绘制这些数据:
ggplot()+
geom_point(data=meta_nmds_water_dna,aes(x=MDS1,y=MDS2,shape=treatment,colour=time),size=3)+
geom_line(data=meta_nmds_water_dna,aes(x=MDS1,y=MDS2,group=treatment,colour=time),size=1)+
geom_text(data=meta_nmds_water_dna,aes(x=MDS1,y=MDS2,label=time,size=6,vjust=0))
如您所见,geom_points 是根据 x 值连接的,但我想通过 "time" 因子连接它们,您知道这样做的方法吗?
啊,完美的本,感谢你把我推向正确的方向!有:
ggplot() +
geom_point(data=meta_nmds_water_dna,aes(x=MDS1,y=MDS2,shape=treatment,colour=time),size=4) +
geom_path(data=path,aes(x=MDS1,y=MDS2,group=treatment,colour=as.numeric(as.character(time))),size=1.5)+
geom_text(data=meta_nmds_water_dna,aes(x=MDS1,y=MDS2,label=time,size=5,vjust=-0.7)) +
coord_equal()
我得到了我想要的。不过,请确保您的数据顺序正确:
path<-meta_nmds_water_dna
path$time<-as.numeric(as.character(path$time))
path<-path[order(path$time),]
我有一个从 vegan metaMDS 中提取的 data.frame,它看起来像这样:
MDS1 MDS2 time nucleic_acid habitat treatment
10dnawatercontrol 0.06297458 0.153364604 10 dna water control
10dnawatertreated -0.20010385 -0.241614081 10 dna water treated
11dnawatercontrol 0.15518683 0.067861388 11 dna water control
11dnawatertreated -0.12137470 -0.258434255 11 dna water treated
12dnawatercontrol -0.02041011 0.140458063 12 dna water control
12dnawatertreated -0.36101682 -0.110667764 12 dna water treated
13dnawatercontrol -0.19054474 0.287597321 13 dna water control
13dnawatertreated -0.26751484 -0.092326331 13 dna water treated
14dnawatercontrol -0.10942501 0.208263588 14 dna water control
14dnawatertreated -0.33594573 0.015625565 14 dna water treated
15dnawatercontrol -0.06631137 0.226240078 15 dna water control
15dnawatertreated -0.27606083 -0.019999889 15 dna water treated
16dnawatercontrol 0.01703248 0.132900239 16 dna water control
16dnawatertreated -0.32565421 -0.022154859 16 dna water treated
17dnawatercontrol -0.25806806 0.201731201 17 dna water control
17dnawatertreated -0.40662186 -0.003830044 17 dna water treated
18dnawatercontrol -0.17699110 0.184587876 18 dna water control
18dnawatertreated -0.46597548 -0.022633769 18 dna water treated
19dnawatercontrol -0.28119311 0.197837800 19 dna water control
19dnawatertreated -0.62468238 0.187704606 19 dna water treated
4dnawatercontrol 1.23658067 0.660553669 4 dna water control
4dnawatertreated 0.85195731 -0.740790358 4 dna water treated
5dnawatercontrol 0.66159385 0.183955243 5 dna water control
5dnawatertreated 0.36367763 -0.446656965 5 dna water treated
6dnawatercontrol 0.19736034 0.206992740 6 dna water control
6dnawatertreated -0.04189317 -0.273487207 6 dna water treated
7dnawatercontrol 0.35362061 -0.005658852 7 dna water control
7dnawatertreated 0.14481323 -0.409432041 7 dna water treated
8dnawatercontrol 0.30718548 0.072991390 8 dna water control
8dnawatertreated 0.13210812 -0.311147579 8 dna water treated
9dnawatercontrol 0.20028730 0.065109821 9 dna water control
9dnawatertreated -0.15459106 -0.234941197 9 dna water treated
我正在用 ggplot2 绘制这些数据:
ggplot()+
geom_point(data=meta_nmds_water_dna,aes(x=MDS1,y=MDS2,shape=treatment,colour=time),size=3)+
geom_line(data=meta_nmds_water_dna,aes(x=MDS1,y=MDS2,group=treatment,colour=time),size=1)+
geom_text(data=meta_nmds_water_dna,aes(x=MDS1,y=MDS2,label=time,size=6,vjust=0))
如您所见,geom_points 是根据 x 值连接的,但我想通过 "time" 因子连接它们,您知道这样做的方法吗?
啊,完美的本,感谢你把我推向正确的方向!有:
ggplot() +
geom_point(data=meta_nmds_water_dna,aes(x=MDS1,y=MDS2,shape=treatment,colour=time),size=4) +
geom_path(data=path,aes(x=MDS1,y=MDS2,group=treatment,colour=as.numeric(as.character(time))),size=1.5)+
geom_text(data=meta_nmds_water_dna,aes(x=MDS1,y=MDS2,label=time,size=5,vjust=-0.7)) +
coord_equal()
我得到了我想要的。不过,请确保您的数据顺序正确:
path<-meta_nmds_water_dna
path$time<-as.numeric(as.character(path$time))
path<-path[order(path$time),]