写了两段代码来实现上面的功能:
(首先提一个建议,就是不要用table作为变量名,因为它在R里面是一个function)
## 读数据
df.table<- read.csv("E:/data.csv",header=F)
A<- df.table[,1]
B<- df.table[,2:6]
## 方法一:
df.data <- NULL
for(i in 1:ncol(df.table))
{
df.tmp <- data.frame(x=1:nrow(df.table), y=df.table[,i])
df.tmp$group <- i-1
df.data <- rbind(df.data, df.tmp)
}
require(lattice)
xyplot(y~x, data=df.data, groups=as.factor(df.data$group), type="b", lty=1:6, col=1:6, lwd=2,main="Compare distances",ylab = "distance")
# -- xyplot是专门用于by group画图的,但是它要求的格式是基于行的。
## 方法二:
plot(A,type="b",lty = 1,col=1,ylim = c(0,0.1),lwd=2,main="Compare distances",ylab = "distance")
points(B[,1],type="b",lty = 2,col=2,ylim = c(0,0.1),lwd=2)
points(B[,2],type="b",lty = 3,col=3,ylim = c(0,0.1),lwd=2)
points(B[,3],type="b",lty = 4,col=4,ylim = c(0,0.1),lwd=2)
points(B[,4],type="b",lty = 5,col=5,ylim = c(0,0.1),lwd=2)
points(B[,5],type="b",lty = 6,col=6,ylim = c(0,0.1),lwd=3)
# -- 当我们要在原有的图上面加点或者线时,可以用points或者lines等命令。