как добавить легенду в matplot?

#r #plot #legend

#r #график #легенда

Вопрос:

У меня уже есть 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:

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

Вам нужно будет заменить БУКВЫ [1: 5] на метки, которые вы действительно хотите.