我正在尝试绘制四个不同系列的向量:
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 27 8 8 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] 删除。
我来说两句