r - 将条件回归方程写为 R 中的图例时出错

标签 r plot legend

背景

我正在尝试通过图例中的bquote 建立回归方程。使用我的 R 代码的版本#1(参见图片下方的 R 代码),我得到了下面的图片。

但是,我需要IF b(见图片下方的R代码)是“负” < strong>THEN + 符号将被删除。为达到此标准,我提出了我的 R 代码的版本#2(参见图片下方的 R 代码)。

问题

我想知道如何修复我的版本#2 R 代码中的错误(参见图片下方的 R 代码)? 错误:“bty = “n”)”中出现意外的 ')'

enter image description here

版本#1:

plot(1, ty = 'n')
a = .234; b = -.335
legend("center", legend = bquote(bold(Outcome[i] == .(round (a , 2))~ + ~.
(round(b , 2))~"\u00D7"~Predictor[i])), bty = "n")

版本#2:

legend("center", legend = bquote(bold(Outcome[i] == .(round (a , 2))~ 
ifelse(.(b > 0), + , "") ~.(round(b , 2))~"\u00D7"~Predictor[i])), 
   bty = "n")

最佳答案

对我来说,最简单的解决方法(以及我通常在这种情况下所做的 - 在你的情况下,我什至不确定你是否可以在 bquote 中调用 ifelse)是在调用外部而不是内部使用 if-else。:

plot(1, ty = 'n')
a = .234; b = -.335

if (b > 0) {

 legend("center", legend = bquote(bold(Outcome[i] == .(round (a , 2))~ + ~.
                                       (round(b , 2))~"\u00D7"~Predictor[i])), bty = "n")

} else {

 legend("center", legend = bquote(bold(Outcome[i] == .(round (a , 2))~ .
                                       (round(b , 2))~"\u00D7"~Predictor[i])), bty = "n")

}

输出:

enter image description here

关于r - 将条件回归方程写为 R 中的图例时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43965715/

相关文章:

python - 如何将没有符号/颜色的图例条目添加到现有图例中?

r - 如何为r中的神经网络包分配起始权重

r - 直接将字符对象转换为数据框而不保存

r - 如何在 R (party-package) 中绘制 cForest 的学习曲线?

r - R中有没有办法用两个轴绘制图例?

r - 使用plot_usmap 的美国 map 图例中的离散值

r - 哪种数据类型最接近 R 中的 C 结构

r - sparklyr 特征转换函数导致错误

python - matplotlib 中有两个变量的直方图

python - 设置步长极坐标图 matplotlib python