2016-11-14 36 views
5

我找不到任何文檔here。 代碼如何在R Vennerable Venn Diagram中擁有標題?

library("Vennerable") 
data(StemCell) 
Vstem <- Venn(StemCell) 
Vstem3 <- Vstem[, c("OCT4", "SOX2", "NANOG")] 
tl <- "masi" 
plot(Vstem3, doWeights = TRUE, type = "circles") 

不成功地設法

  • plot(..., main = tl)
  • plot(..., title = tl)
  • plot(...); title(tl)
  • plt <- plot(...); title(plt, tl)

圖1個無題錯誤輸出

enter image description here

R:3.3.1
OS:Debian的8.5

+1

不,我沒有看到它(今天你的問題是我第一次聽說過這個軟件包),但是我不清楚從看github消息的問題是什麼 – user20650

+0

對不起,我還是不明白,我猜測821是你的例子中保留的三個變量(來自E2F4 ??)中的任何一個的數量。這裏有什麼問題。你的圖中的問題(雖然我不知道我在找什麼)上面看起來沒問題,並且github的問題信息也不清楚。 – user20650

+0

@ user20650我用可複製的代碼澄清了wiki https://github.com/js229/Vennerable/issues/40我也在這裏澄清了wiki的答案。 - - 您如何調整提案(1)以避免文字與圖形重疊? –

回答

3

user20650答案在這裏總結意見。嘗試(1-2)並選擇最合適的。

  1. 劇情方法是基於網格包,所以正常的基礎R劇情靠近添加標題將無法正常工作。看看args(Vennerable:::plotVenn)的參數,似乎沒有辦法添加標題,並且無法幫助繪圖返回網格對象。所以,你可以只畫繪圖窗口上的標題用以下

    grid.text("masi", y=0.9, gp=gpar(col="red", cex=2)) 
    
  2. 作爲一種替代方法,你可以搶GROB然後用grid.arrange繪製標題

    gridExtra::grid.arrange(grid::grid.grabExpr(plot(Vstem3, doWeights = TRUE, 
        type = "circles")), top="masi") 
    

grid.arrange方式將標題作爲單獨的grob添加,然後它們排列成兩行。因此,在調整圖形窗口大小時,它仍會出現在圖表上方。直接在窗口上繪製時(如第一個版本),這不會成立。 注意:您不需要使用gridExtra,您可以在網格中執行此操作。

圖。從(1), 圖2從(2)

enter image description here enter image description here

輸出1個輸出,我認爲(1)可以用更多的調整比較好,但現在(2)更好。

+1

您有我的投票。我只是在輸入相同的答案。 –

相關問題