【发布时间】:2016-04-07 09:52:25
【问题描述】:
我制作了一个三向维恩图。我似乎无法解决三个问题。
移动圆圈标签(即“Set1”、“Set2”、“Set3”)的代码是什么,因为现在距离圆圈太远了。
使圆圈大小相等/改变圆圈大小的代码是什么?
-
在绘图周围移动圆圈的代码是什么。现在,set2 在 set3 内(但颜色不同),我希望图表看起来更像显示维恩图的“标准”方式(即 3 个独立的圆圈,中间有一些重叠)。
另一方面,我发现很难找到诸如“set_x”、“set_alpha”之类的命令应该是什么;如果有人知道可以回答上述问题的手册,我将不胜感激,我似乎无法找到一个包含我需要的所有信息的地方。
import sys
import numpy
import scipy
from matplotlib_venn import venn3,venn3_circles
from matplotlib import pyplot as plt
#Build three lists to make 3 way venn diagram with
list_line = lambda x: set([line.strip() for line in open(sys.argv[x])])
set1,set2,set3 = list_line(1),list_line(2),list_line(3)
#Make venn diagram
vd = venn3([set1,set2,set3],set_labels=("Set1","Set2","Set3"))
#Colours: get the HTML codes from the net
vd.get_patch_by_id("100").set_color("#FF8000")
vd.get_patch_by_id("001").set_color("#5858FA")
vd.get_patch_by_id("011").set_color("#01DF3A")
#Move the numbers in the circles
vd.get_label_by_id("100").set_x(-0.55)
vd.get_label_by_id("011").set_x(0.1)
#Strength of color, 2.0 is very strong.
vd.get_patch_by_id("100").set_alpha(0.8)
vd.get_patch_by_id("001").set_alpha(0.6)
vd.get_patch_by_id("011").set_alpha(0.8)
plt.title("Venn Diagram",fontsize=14)
plt.savefig("output",format="pdf")
【问题讨论】:
标签: python matplotlib venn-diagram matplotlib-venn