R plot()。每个条目有多个变量的图例

3

我对R有一定的陌生。我已经跟随并实现了以下两个主题的结果:

http://tolstoy.newcastle.edu.au/R/e17/help/12/03/7984.html

http://lukemiller.org/index.php/2012/10/adding-p-values-and-r-squared-values-to-a-plot-using-expression/

第二个链接更详细地介绍了第一个解决方案。
以下是我已经完成的内容:
sigma <- c(1,2,3) rp <- vector('expression',3) rp[1] <- substitute(expression(paste(sigma == Value1,"% ")), list(Value1 = sigma[1]))[2] rp[2] <- substitute(expression(paste(sigma == Value1,"% ")), list(Value1 = sigma[2]))[2] rp[3] <- substitute(expression(paste(sigma == Value1,"% ")), list(Value1 = sigma[3]))[2] plot(0);legend(x="topright",legend=rp)
现在,我对 expression(paste()) 不是很熟悉。我想扩展每个条目以包含其他信息,以便我可以添加另一个变量。所以例如,
mu <- c(4,5,6)
我现在想将 mu 添加到第一个图例条目中,看起来像
(Greek) sigma=1%, (Greek) mu=4%
我该如何修改上面的表达式(paste())组合来实现这个目标?
此外,当我绘制图例时,文本非常“右对齐”。我该如何确保它在边界框中居中?
谢谢你的帮助。
Maziar
1个回答

2

这里有一个不太优雅的解决方案:

sigma <- c(1,2,3)
mu <- c(4,5,6)
rp <- vector('expression',3)
i=1
for (i in 1:length(sigma)){
  jnk=paste("paste(sigma == ", sigma[i],",', ',", "mu == ", mu[i],")")
  rp[i]=parse(text=jnk)  
}
plot(0);legend(x="bottomleft",legend=rp)

文本对齐问题是一个不同且相当基础的问题,您可以在其他地方找到解决方案。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接