带有R表达式的文本的动态下标

时间:2017-11-23 10:01:23

标签: r plot

我想动态生成带有R表达式的图中文本的下标。下图中三点的文字应为$\pi_1$$\pi_2$$\pi_3$

lbs <- vector()
for(i in 1:3) lbs <- append(lbs, expression(pi[i]))

plot(1:3)
text(1:3, labels=lbs)

出现希腊字母,但下标仍为i。我也试过bquote但没有成功。

我感谢任何建议。

1 个答案:

答案 0 :(得分:2)

试试这个

lbs <- vector()
for(i in 1:3) lbs <- append(lbs, parse(text=(paste0("pi[",i,"]"))))

plot(1:3)
text(1:3, labels=lbs)

我确信有更好的解决方案,但这是有效的。 您的代码存在的问题是expression()内的所有内容都未被评估。 parse()计算并返回表达式。enter image description here