尝试使用 VennDiagram 包在 R 中创建维恩图时出错

Error when trying to create Venn diagrams in R using VennDiagram package

我已经下载并可以在 R 中成功加载 VennDiagram 包。我目前正尝试使用该包以及该包作者提供的示例代码来生成一些示例图。但是,对于我尝试使用的任何示例代码,都没有生成图形,唯一的屏幕输出是:

[1] 1

我找到了以下信息线程:Problems with VennDiagram?

...但第一个建议的故障排除步骤是确认我们可以通过将对 venn.diagram() 的调用分配给一个临时变量然后调用 grid.draw(temp ) [完整代码如下所示],导致错误消息

Error in UseMethod("grid.draw") : 
  no applicable method for 'grid.draw' applied to an object of class "c('double', 'numeric')"

我的测试代码是:

library(VennDiagram);
library(grid);

temp <- venn.diagram(
    x = list(
        A = 1:100,
        B = 1:10
        ),
    filename = "2-2_special_case_pairwise-inclusion.tiff",
    cex = 2.5,
    cat.cex = 2.5,
    cat.pos = 0
    );

grid.draw(temp)

解决此错误消息的其他线程建议修改 grid.draw() 的参数,但我不确定如果上面的示例不起作用,为什么会被建议和接受, grid.draw 文档 (https://www.rdocumentation.org/packages/grid/versions/3.4.1/topics/grid.draw) 似乎没有暗示需要修改。

上述问题适用于此包的作者提供的所有示例,因此这不是对 venn.diagram() 的一个特定调用的问题。

提前感谢您的任何建议。

temp 在您的示例中是数字,因为您只是在文件系统上创建一个文件并返回 1 以让您知道它有效。

与其给 grid.draw 数字 1,不如给它画点东西 :)

temp <- venn.diagram(
  x = list(
    A = 1:100,
    B = 1:10
  ),
  filename =NULL,
  cex = 2.5,
  cat.cex = 2.5,
  cat.pos = 0
);


grid.draw(temp)