R中的欧拉图
Euler diagram in R
大家好,我想绘制欧拉图,但我希望以不同的方式绘制,如下所示。我如何绘制这种类型的欧拉图任何建议,是否可以像这样绘制
谢谢
A B C D A1 B1 C1 D1
2 3 5 6 2 30 30 60
3 0 1 2 4 50 10 10
4 0 6 5 85 4 85 50
6 0 10 4 90 70 90 4
5 92 50 10 50 50 3 30
如评论中所述,您将无法用圆圈表示超过 3 组的任意一组关系。 eulerr
包使用省略号来获得更多组合,并使结果与每个区域中的元素数量成正比。我制作了一个名为 nVennR
的不同包,它使用圆圈代替集合来表示区域。然后这些集合 围绕 这些圆圈绘制:
> library(nVennR)
> myT <- read.table('clipboard', header = T)
> lol <- as.list(myT)
> myV <- plotVenn(lol)
> myV <- plotVenn(nVennObj = myV)
> myV <- plotVenn(nVennObj = myV)
> myV <- plotVenn(nVennObj = myV)
> myV <- plotVenn(nVennObj = myV)
> myV <- plotVenn(nVennObj = myV)
> myV <- showSVG(nVennObj = myV, opacity = 0.2)
需要重复命令myV <- plotVenn(nVennObj = myV)
以获得紧凑的形状。如果您尝试一下,您会发现它需要几分钟的时间,因为它需要执行多次模拟。该包可以采用任意数量的集合,但超过 9 组就会变得非常慢。结果:
您可以保存、编辑和改进图片以更好地展示信息,但这并非微不足道。您可以在 vignette.
中找到更多信息
大家好,我想绘制欧拉图,但我希望以不同的方式绘制,如下所示。我如何绘制这种类型的欧拉图任何建议,是否可以像这样绘制
谢谢
A B C D A1 B1 C1 D1
2 3 5 6 2 30 30 60
3 0 1 2 4 50 10 10
4 0 6 5 85 4 85 50
6 0 10 4 90 70 90 4
5 92 50 10 50 50 3 30
如评论中所述,您将无法用圆圈表示超过 3 组的任意一组关系。 eulerr
包使用省略号来获得更多组合,并使结果与每个区域中的元素数量成正比。我制作了一个名为 nVennR
的不同包,它使用圆圈代替集合来表示区域。然后这些集合 围绕 这些圆圈绘制:
> library(nVennR)
> myT <- read.table('clipboard', header = T)
> lol <- as.list(myT)
> myV <- plotVenn(lol)
> myV <- plotVenn(nVennObj = myV)
> myV <- plotVenn(nVennObj = myV)
> myV <- plotVenn(nVennObj = myV)
> myV <- plotVenn(nVennObj = myV)
> myV <- plotVenn(nVennObj = myV)
> myV <- showSVG(nVennObj = myV, opacity = 0.2)
需要重复命令myV <- plotVenn(nVennObj = myV)
以获得紧凑的形状。如果您尝试一下,您会发现它需要几分钟的时间,因为它需要执行多次模拟。该包可以采用任意数量的集合,但超过 9 组就会变得非常慢。结果:
您可以保存、编辑和改进图片以更好地展示信息,但这并非微不足道。您可以在 vignette.
中找到更多信息