2016-03-07 54 views
0

我在嘗試使用ggternggplot2來繪製多圖塊圖的行和列的標題。我嘗試過使用theme(),但找不到能正確標記行並替換文本的屬性(使用angle旋轉後)。理想情況下,我希望行中有垂直文字說'副標題:1'和'副標題2'。多個三元圖上的行的「垂直」標題

此代碼從ggtern網站上的an example。預先感謝您的幫助。

require(ggplot2) 
require(ggtern) 
data(Feldspar) 

arrangement = list() 

for(r in seq(1,2)){ 
    for(c in seq(1, 2)){ 

    title <- "" 
    if (r == 1){title <- paste("Top title:", c)} 

    ytitle <- "" 
    if (c == 1){ ytitle <- paste("Side title:", r)} 

     x = ggtern(data=Feldspar,aes(x = Ab,y = An,z = Or)) + 
     geom_point() + 
     ggtitle(title)+ 
     labs(y = ytitle) 

     arrangement[[length(arrangement) + 1]] = x 
     } 
} 
grid.arrange(grobs = arrangement) 

回答

0

我想你的意思來實現的,應該用小面通過facet_grid(...)來完成,如下面簡單的例子是什麼:

library(ggtern) 
set.seed(1) #for reproducability 
df = data.frame(A=runif(100),B=runif(100),C=runif(100), 
       COLS=paste("Column",sample(1:2,100,replace=TRUE)), 
       ROWS=paste("Row", sample(1:2,100,replace=TRUE))) 
ggtern(data=df,aes(A,B,C)) + 
    geom_point() + 
    facet_grid(ROWS~COLS) 

將會產生如下:

example