在计算重叠后打印维恩图

4
我正在尝试使用VennDiagram软件包中的calculate.overlap函数,首先计算并打印一个Venn图。我已经能够计算出数据集的重叠部分,但是需要帮助如何打印Venn图形。有人能提供帮助吗?我阅读了文档,但没有找到相关信息。
> library('VennDiagram')

# A simple single-set diagram
cardiome <- letters[1:10]
superset <- letters[8:24]
overlap <- calculate.overlap(
x = list(
"Cardiome" = cardiome,
"SuperSet" = superset
)
);
3个回答

2
函数venn.diagram()可以实现这一功能。例如,在您的示例中。
venn.diagram(x = list(
  "Cardiome" = cardiome,
  "SuperSet" = superset
), "plot_venn")

它保存在工作目录中。输入getwd()查看它所设置的内容。

请参阅

?venn.diagram()

更多信息请参考。


2

另一个简单的例子展示了如何使用 VennDiagram 包打印维恩图:

library(VennDiagram)
cardiome <- letters[1:10]
superset <- letters[8:24]
overlap <- calculate.overlap(
x <- list("Cardiome"=cardiome, "SuperSet"=superset))

venn.plot <- draw.pairwise.venn(
    area1 = length(cardiome),
    area2 = length(superset),
    cross.area = length(overlap),
    category = c("Cardiome", "Superset"),
    fill = c("blue", "red"),
    lty = "blank",
    cex = 2,
    cat.cex = 2,
    cat.pos = c(180, 180),
    cat.dist = 0.05,
    cat.just = list(c(0, 1), c(1, 1))
    )
grid.draw(venn.plot)
savePlot(filename="venndiag", type="png")

在此输入图像描述

带有项标签的集合维恩图:

library(RAM)
vectors <- list(Cardiome=cardiome, Superset=superset)
group.venn(vectors=vectors, label=TRUE, 
    fill = c("blue", "red"),
    cat.pos = c(180, 180),
    lab.cex=1.1)

enter image description here


Marco,将第二部分作为答案添加到https://dev59.com/5V8f5IYBdhLWcg3wHPiN可能是值得的。 - user20650
@MarcoSandri 真的很喜欢第二部分(RAM包)。为此点赞 :) - Prem

2
< p > ?venn.diagram 表示这个意思

library('VennDiagram')
venn.plot <- venn.diagram(
  x = list(
    cardiome = letters[1:10],
    superset = letters[8:24]
  ),
  filename = NULL
);
grid.draw(venn.plot);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接