2012-03-14 291 views
5

在Windows 7中使用R 2.14.0,我想用R plot()在標題中包含斜體和變化的變量。這裏有一些代碼:R plot:在標題中使用斜體和變量

ps=c(1,2,3) 

layout(matrix(1:3,1,3)) 

#this works but isn't what I want 
for(i in 1:3){ 
    plot(1,1,main=expression(paste(italic(p),'=5'))) 
} 
#this doesn't work 
for(i in 1:3){ 
    plot(1,1,main=expression(paste(italic(p),'=',ps[i]))) 
} 
#this doesn't work either 
for(i in 1:3){ 
    plot(1,1,main=paste(expression(paste(italic(p),'=')),ps[i])) 
} 

我想要的標題是p [斜體] =在該迭代期間ps的值。例如,對於第一次迭代,「p = 0.1」

任何幫助,將不勝感激。謝謝。

回答

5

這有幫助嗎?

ps=c(1,2,3) 
layout(matrix(1:3,1,3)) 
for(i in 1:3){ 
    plot(1,1,main=substitute(paste(italic(p), " = 0.", x, sep=""), list(x=ps[i]))) 
} 

也看看this這個問題。

+0

非常感謝jmsigner,那正是我需要的! – user1260251 2012-03-14 18:53:13

+6

不需要plotmath'paste'的sep參數。一個簡單的方法可以省去'paste'和hokey「0」。並只使用bquote:main = bquote(italic(p)==。(ps [i]/10)) – 2012-03-14 19:07:30

+0

感謝您的評論,我不知道bquote。 – johannes 2012-03-14 19:11:50