我正在尝试绘制四个不同系列的向量:
1)adm 7 9 46 11 52 29 25 62
2)拍拍35 29 24 19 22 21 42 23 34 12 28 17 11 15 16 14 27 20 8 38 10 10 14 22 22 23 24 24 24
3)仅41 49 42 59 58 23 35 31 20 44 56 29 57 50 33 46 28 17 15 17 28 44 46 49 50 57 58
4)与23 51 44 54 26 15 33 41 34 42 39
我尝试了以下操作以在同一图上绘制多个数据系列:
plot(pat,type="l",xlab="Degree",ylab="Count",col="blue4")
par(new=T)
plot(adm,type="l",xlab="Degree",ylab="Count",col="red4")
par(new=T)
plot(med,type="l",xlab="Degree",ylab="Count",col="green4")
par(new=T)
plot(nur,type="l",xlab="Degree",ylab="Count",col="black")
par(new=F)
而我得到了...
我需要帮助的两件事是:
1)为匹配每条线及其数据源的图创建图例。
2)修复图中的重叠标签(因为我的意思是x和y轴上的值)
如果将值存储在列表中会容易一些
dd<-list(
adm=c(7,9,46,11,52,29,25,62),
pat=c(35,29,24,19,22,21,42,23,34,12,28,17,11,15,16,
14,27,20,8,38,10,10,14,22,22,23,24,24,24),
nur=c(41,49,42,59,58,23,35,31,20,44,56,29,57,50,33,
46,28,17,15,17,28,44,46,49,50,57,58),
med =c(23,51,44,54,26,15,33,41,34,42,39)
)
ylim=c(0, max(sapply(dd, range)))
xlim=c(0, max(sapply(dd, length)))
cols<-c("blue4","red4","green4","black")
plot(dd[[1]], xlab="Degree", ylab="Count", col=cols[1], type="l", xlim=xlim, ylim=ylim)
for(i in 2:4) {
lines(dd[[i]], col=cols[i])
}
legend(x=25,50, names(dd), col=cols, lty=1)
一般而言,您只打过plot
一次电话;那么如果您需要添加数据,最好使用points()
或者lines()
不要重绘轴。
像这样的图书馆lattice
往往使分组图更容易
library(lattice)
xyplot(values~idx, transform(stack(dd), idx=ave(values, ind, FUN=seq_along)),
group=ind, auto.key=list(lines=T, points=F, columns=2), type="l")
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句