【问题标题】:Is there a way to force overlap of two circles?有没有办法强制两个圆圈重叠?
【发布时间】:2019-05-07 11:44:16
【问题描述】:

我想绘制一个非常接近 R Limma 包所做的维恩图。

在这种情况下,我有一个不与其他两个重叠的集合。 R包显示为“0”,但matplolib-venn画了另一个圆圈。

编辑:

我的 3 套是:

  • 9
  • 7 8 9 10
  • 1 2 3 4 5 6

我的代码是:

set2 = set([9])
set1 = set([7, 8, 9, 10])
set3 = set([1, 2, 3, 4, 5, 6])

sets = [set1, set2, set3]
lengths = [len(one_set) for one_set in sets]

venn3([set1, set2, set3], ["Group (Total {})".format(length) for (length) in lengths]) 

谢谢。

R 利玛:https://i.ibb.co/h9yhgm1/2019-05-07-Screen-Hunter-06.jpg

matplotlib_venn: https://i.ibb.co/zx6YJbz/2019-05-07-Screen-Hunter-07.jpg

弗雷德

【问题讨论】:

  • 嗨 FredBGA。根据您的问题,很难知道发生了什么(也许您想看看stackoverflow.com/help/how-to-ask)。如果您可以发送用于创建图表的数据,那将会容易得多。我的猜测是只有一个元素的组中的元素也在有四个元素的组中。两个图表都支持这一点,并且两者都是等价的。
  • 您好,我已经用代码和集合示例编辑了问题。

标签: matplotlib-venn


【解决方案1】:

set3set1set2 没有共同的元素。两张图都是正确的。如果要显示所有空格,可以试试venn3_unweighted

from matplotlib_venn import venn3_unweighted

set2 = set([9])
set1 = set([7, 8, 9, 10])
set3 = set([1, 2, 3, 4, 5, 6])

sets = [set1, set2, set3]
lengths = [len(one_set) for one_set in sets]

venn3_unweighted([set1, set2, set3], ["Group (Total {})".format(length) for (length) in lengths])

结果:

【讨论】:

  • 完美答案。谢谢你。这正是我想要实现的目标。
猜你喜欢
  • 2021-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-21
  • 2021-12-30
  • 2018-07-24
  • 1970-01-01
  • 2014-04-17
相关资源
最近更新 更多