【问题标题】:How to have title in R Vennerable Venn Diagram?如何在 R Vennerable 维恩图中获得标题?
【发布时间】:2016-11-14 20:14:23
【问题描述】:

我在文档 here 中找不到任何内容。 代码

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 &lt;- plot(...); title(plt, tl)

图。 1 没有标题的错误输出

R:3.3.1
操作系统:Debian 8.5

【问题讨论】:

  • 不,我没看过(你今天的问题是我第一次听说这个包),但是我看github消息不清楚问题是什么跨度>
  • 对不起,我还是不明白,我猜 821 是 id 的计数,不在您在示例中保留的三个变量中的任何一个(来自 E2F4??)。这里有什么问题。你在上面的问题中的图(虽然我不知道我在找什么)看起来还可以吗??而且github问题消息也不清楚。
  • @user20650 我用可重现的代码github.com/js229/Vennerable/issues/40 澄清了 wiki 我还在这里澄清了 wiki 的答案。 - - 这里如何调整提案(1),避免文字与图重叠?
  • 谢谢。好的,您的 github;s 更清晰,第二个示例未正确显示计数。希望作者回复。对于标题,只需增加情节大小。

标签: r venn-diagram


【解决方案1】:

此处汇总的 cmets 中的 user20650 答案。尝试(1-2)并选择最适合的。

  1. plot 方法是基于 grid 包的,所以普通的 base R plot 方法来添加标题是行不通的。查看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 (1) 的输出, 图 2 (2) 的输出

我认为 (1) 进行更多调整可能会更好,但现在 (2) 会更好。

【讨论】:

  • 你有我的投票。我只是输入了相同的答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多