我有一个问题,我有几个变量(事先我不知道有多少)。我想自动绘制它们并为它们添加一个图例。我这么做了,但是问题是,我不能理解如何在这里添加表达式。我希望图例看起来像$b_1$而不是beta1。
我有一个矩阵: beta_tilde。我把它画出来:
n <- 5
beta_tilde <- matrix(rnorm(100*n), nr = 100)
ts.plot(beta_tilde, ylim = c(min(beta_tilde), max(beta_tilde)), col = 1:n)
legend("topright" , legend = eval(substitute(paste("beta[", v,"]", sep = ""), list(v=1:n))), col=1:n, lty=1, cex=0.7)
发布于 2018-06-24 23:11:24
substitute
不会返回长度大于1的表达式向量。您使用eval
和paste
的方法无论如何都是错误的。你应该在语言上学习一些计算的例子。
我在这里找到了最简单的for
循环:
leg <- vector("expression", n)
for (i in seq_len(n)) leg[[i]] <- substitute(beta[v], list(v = i))
legend("topright", legend = leg, col=1:n, lty=1, cex=0.7)
https://stackoverflow.com/questions/51010197
复制相似问题