如何将图例添加到matplot?

时间:2019-03-14 15:50:15

标签: r plot legend

我已经有使用以下代码的matplot。

P1 <- matrix(c(0, 1, 0, 0, 0, 0, 2/3, 1/3, 0, 1, 0, 0, 0, 0, 0, 1), 4, 4, byrow=TRUE)

run.mc.sim <- function( P, num.iters = 50 ) { 
num.states <- nrow(P)
states     <- numeric(num.iters)
states[1]    <-  1
for(t in 2:num.iters) {   
p  <- P[states[t-1], ]
states[t] <-  which(rmultinom(1, 1, p) == 1)
}
return(states)
}

num.chains     <- 5
num.iterations <- 50

chain.states1  <- matrix(NA, ncol=num.chains, nrow=num.iterations)

for(c in seq_len(num.chains)){
  chain.states1[,c] <- run.mc.sim(P1)
}

matplot(chain.states1, type='l', lty=1, col=1:5, ylim=c(0,4), 
main='Simulation of P1 in 50 steps',ylab='state', xlab='time')
abline(h=1, lty=3)
abline(h=4, lty=3)

唯一的问题是我不知道如何在对应于颜色的图上添加图例。

1 个答案:

答案 0 :(得分:0)

legend("topright", legend=LETTERS[1:5], lty=1, col=1:5, inset=c(0,0.1))

您将需要用实际需要的标签替换LETTERS [1:5]。