我使用以下代码绘制维恩图。问题是当一组是另一组的子集时,代码不起作用(见图)。当一组是另一组的子集时,如何更改以下代码以使其工作?在这种情况下,我希望红色圆圈在绿色圆圈内(颜色可能应该与重叠区域的颜色相同,而不是红色)。
sets = Counter()
sets['01'] = 10
sets['11'] = 5
sets['10'] = 5
setLabels = ['Set 1', 'set 2']
plt.figure()
ax = plt.gca()
v = venn2(subsets = sets, set_labels = setLabels, ax = ax)
h, l = [],[]
for i in sets:
# remove label by setting them to empty string:
v.get_label_by_id(i).set_text("")
# append patch to handles list
h.append(v.get_patch_by_id(i))
# append count to labels list
l.append(sets[i])
#create legend from handles and labels
ax.legend(handles=h, labels=l, title="Numbers")
plt.title("venn_test")
plt.savefig("test_venn.png")
pdb.set_trace()