R中的轴标签:p(Y = y | theta = something)

时间:2016-02-05 20:19:37

标签: r axis-labels

我全身都搜索过,无法找到带有条件符号的代码,如

P(A | B)

我正在使用的代码(通用R代码,而不是ggplot)

ylab = bquote(Pr( Y == y |  theta == .(mytheta) , n == .(n)))

这给了我一个标签是

Pr(|(Y = y,theta = 0.2),n = 10)

如果θ是正确的希腊符号,则mytheta为0.2,n为10。 所有不起作用的是条件符号。它看起来像R正在采取|对于一个或......

我还没有尝试过ggplot,但是我希望首先在普通R中使用它。

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

我总是只使用expression。我之前没有使用bquote

编辑

对不起,我做了很多这些,显然导出了错误的一个。使用paste而非paste0

plot(rnorm(100), rnorm(100), ylab= expression(paste("P(Y| ", theta," )")))

enter image description here

答案 1 :(得分:1)

我认为将'pipe'(与'OR')解析为波兰表示法非常有趣。可以使用符号字体使用?plotmath?points

中描述的方法访问条件栏
plot(1,1, main=bquote(Pr( Y == y ~ symbol("\275") ~ theta == .(mytheta) , n == .(n))))

(我尝试使用%|%作为缺失的条件符号来制作SPECIAL用户定义函数,但失败了。)

给你的评论问题要求说明(实际上有两个版本如何以同等方式使用substitute

mytheta = 0.2
plot(rnorm(100), rnorm(100), ylab= substitute(P(Y~"|"~ mytheta ), list(mytheta=mytheta)) )
plot(rnorm(100), rnorm(100), ylab= substitute(P(Y~"|"~ theta == mytheta ), 
                                                    list(mytheta=mytheta))  )
 # Second version prints greek-theta == value