使用“图例”
将方程式添加到散点图中有点麻烦一个简单的例子如下:
plot(1:100)
# The below code can work if I add "= 0.1234" directly.
legend(locator(1), expression(paste("Linear model: ", R^2, "= 0.1234",sep="")),
text.col= "black",cex=1,bty="n")
# The below code cannot work if I add the "ps".
ps = "= 0.1234"
legend(locator(1), expression(paste("Linear model: ", R^2, ps, sep="")),
text.col= "red",cex=1,bty="n")
我的真正问题是这个例子有点复杂。
那我该如何修改这段代码?
答案 0 :(得分:1)
“ps”对象作为表达式处理,即未被评估。要解决此问题,请使用bquote
和.()
legend(locator(1), legend= bquote("Linear model: "* R^2*.(ps)),
text.col= "red",cex=1,bty="n")
BTW第一个版本在没有paste
的情况下会更紧凑地表示:
legend(locator(1), expression(Linear~model*":"~ R^2 == 0.1234),
text.col= "black",cex=1,bty="n")
唯一需要引用的是分号。