2015-12-18 109 views
3

我正在通過Aguinis, Gottfredson, & Culpepper (2013)的示例進行工作。他們提供了一些R代碼來描繪交互。下面是相關部分:這個表示法在expressoin函數中意味着什麼:* ~~

#Figure 3 Panel (b) - Reduced Y Scale 
ylb=5;yub=6.5 
curve(0+1*x,xlb,xub,xlab='LMX',ylab='Individual Empowerment',lwd=2,type='n', 
ylim=c(ylb,yub)) 
for(i in 1:length(Wjs)){ 
    B0j=gammas[1]+gammas[3]*Wjs[i] 
    B1j=gammas[2]+gammas[4]*Wjs[i] 
    curve(B0j+B1j*x,xlb,xub,add=T,xlab='LMX',ylab='Individual Empowerment',lwd=2,lty=i) 
} 

labs=c(expression(W[j]==-1*~~SD),expression(W[j]==0*~~SD),expression(W[j]==1*~~SD)) 

legend(xlb,6.5,legend=c("Leadership Climate",labs[1],labs[2],labs[3]),bty='n',lty=c(0:3)) 

注意如何expression函數用於創建傳奇,有這個*~~但在最終的圖形似乎有什麼比空的空間更多。
這是幹什麼用的?這是什麼意思?

回答

3

你猜對了!代字號在expression()中增加了一個空格。見?plotmath表以獲取更多信息......從那裏,

'X * Y' 並列x和y

'X ~~ Y' 把多餘的x和y之間的空格

+0

星號是什麼? –

+0

好吧,爲了並列。在這裏看起來很不禮貌,如果放棄了,實際上並沒有什麼區別。爲什麼我會使用一個特殊的字符呢?如果我可以只將字符寫在一起? –

+0

啊,沒關係,只是發現自己。如果想寫1 + SD之間沒有空格的「+ 1SD」,這將是必要的。那麼「+ 1 * SD」就是要走的路。多謝你們! –