2016-02-01 50 views
2

在ggplot2中,很容易使用element_text和參數size=6將字體大小設置爲6磅(對於文本,大小的單位爲pt)。但是,我們不能使用element_line和參數size=0.5將線寬設置爲0.5pt(對於線,尺寸沒有單位)。那麼如何解決這個問題呢?如何在ggplot2中將線寬設置爲0.5 pt?

grid包中,我遇到了類似的問題。該代碼是如下:

library(grid) 
grid.rect(width=unit(5, "cm"), height=unit(5, "cm"), gp=gpar(lwd=unit(2, "cm"))) 

,其結果是: enter image description here

顯然,線寬度不爲2釐米的矩形的寬度或高度進行比較。

+0

對於第一個問題,我已得到了答案[https://github.com/yihui/tikzDevice/issues/68](https://github .COM /一輝/ tikzDevice /問題/ 68)。正確的lwd單位應該是72.27/96(R中的96個像素是1英寸,這是ggplot圖中的72.27個點)。所以我可以通過'size = 72.27/96 * 0.5'在ggplot2中設置線寬爲0.5pt。但是,第二個問題仍然是一個問題。 – Tiger

回答

1

一個LWD單元是明顯爲PDF設備英寸1/96,和它上線的任一側上對稱地延伸

grid.newpage() 
grid.rect(width=unit(1, "cm")+unit(1,"mm"), 
      height=unit(1, "cm")+unit(1,"mm"), 
      gp=gpar(lwd=96/2.54, alpha=0.5, linejoin="mitre",linejoin=1)) 

enter image description here

然而,在窗口系統中,結果是:

enter image description here

+0

在Mac系統中的windows系統有什麼不同嗎? – Tiger

+0

'?par'提到lwd的解釋是特定於設備的,所以您可能比這個交互式設備擁有更好的pdf設備。 – baptiste