我在R.中读到了相当多关于创建维恩图的帖子。Is it possible to create a proportional triple Venn Diagram谈到了使用eulerr包。Venn diagram proportional and color shading with semi-transparency非常全面,确实帮助我完成了许多我需要的其他图形。
虽然上面的线程很棒,但我相信有一个问题仍然不能通过上面的线程解决。当三个集合的交集代表整个区域的很大一部分时,就会发生这种情况。在我的例子中,R&S&W占总面积的92%。因此,这个图是难以察觉的,也是丑陋的。我们有没有办法解决这个问题?
以下是我的数据和代码:
dput(Venn_data)
structure(c(94905288780.4383, 3910207511.54001, 2615620176.44757,
1125606833.85568, 187542691.618916, 104457994.331746, 96049675.0823557
), .Names = c("R&S&W", "R&S", "S&W", "S", "R", "W", "R&W"))
VennDiag2 <- eulerr::euler(Venn_data,shape="ellipse")
windows()
plot(VennDiag2)下面是输出:

我看不出什么是R&S,S&W,R,S,W等。
我还尝试了venneuler包。
下面是我的代码:
windows()
v<-venneuler(Venn_data)
plot(v)不幸的是,这也没有帮助。这是输出。

我们有没有办法解决这个问题?我不是专家,所以我想在这里问一下。我将由衷地感谢任何帮助。我已经在这上面花了相当多的时间,但仍然不能让它工作。
发布于 2018-02-28 16:53:04
您始终可以自己检索打印参数并使用箭头或其他方法定位标签,但另一种选择是使用图例而不是标签。
plot(VennDiag2, legend = TRUE)

然而,欧拉图在这里是否有很大的用处还是有些疑问的。
发布于 2019-01-16 01:51:23
在我几个月前发布的nVennR包中有一种不同的可视化策略:
library(nVennR)
v <- createVennObj(nSets = 3, sNames = c('R', 'S', 'W'), sSizes = c(0, 104457994.331746, 1125606833.85568, 2615620176.44757, 187542691.618916, 96049675.0823557, 3910207511.54001, 94905288780.4383))
v <- plotVenn(nVennObj = v)

我没有预料到需要这么大的数量,我看到他们被裁剪了。但是,结果是一个矢量图像(svg),之后可以编辑该图片。您可以在vignette中找到更多详细信息,包括数字按此顺序排列的原因。该包还可以处理更大数量的集合。
https://stackoverflow.com/questions/49012418
复制相似问题