如何在一个图上绘制三个矢量/折线图?

时间:2015-08-14 13:01:50

标签: r

  

如何在R?中绘制一条包含3行的折线图

 min<-c(1,1,4,5)
 max<-c(8,9,8,10)
 d<-c(-2,3,4,3)

2 个答案:

答案 0 :(得分:2)

我们可以在matplot cbind之后使用vector来创建matrix

matplot(cbind(min, max, d), type='l')

要更改“x轴”标签,我们可以使用xaxt=n进行绘图,并使用labels更改axis

matplot(cbind(min, max, d), type='l', xaxt='n', col=2:4)
axis(1, at=1:4, labels=letters[1:4])
legend('topright', legend=c('min', 'max', 'd'), col=2:4, pch=1)

答案 1 :(得分:2)

完成@ akrun非常好答案的另一种解决方案,基于this page

require(ggplot2)
require(reshape2)
require(directlabels)

min <- c( 1, 1, 4, 5)
max <- c( 8, 9, 8, 10)
d   <- c(-2, 3, 4, 3)

df <- data.frame(min=min, max=max, d=d, x=1:4)
df.m <- melt(df,id.vars="x")

p <- ggplot(df.m, aes(x=x, y=value, color=variable)) + geom_line()

direct.label(p)

the result