我使用matplotlib-venn库创建了两个不同的Venn图,它们至少共享一组。我希望那一组的圆圈在两种情况下都是相同大小的,所以它们是可比较的。我也想改变标签的字体大小,但我还不知道如何从matplotlib-venn函数中得到这个字体。我怎么能做到呢?
这些集合的一个例子可能是这样的:
from matplotlib_venn import venn3
s1=set('abracadabra')
s2=set('alakazam')
s3=set('stackoverflow')
s4=set('hocus pocus')
v_test1=venn3([s1,s2,s3],('set1','set2','set3'))
v_test1=venn3([s1,s3,s4],('set1','set3','set4'))发布于 2017-09-01 22:59:16
当你调用venn3函数时,它调用solve_venn3_circles来计算圆心和半径。这意味着你不能自己设定半径,因为它会影响最终图像,而且可能是不正确的。但是,您可以尝试通过normalize_to函数的venn3参数来调整圆圈的大小。
对于字体大小,可以使用以下代码:
for t in v_test1.set_labels: t.set_fontsize(22)
for t in v_test1.subset_labels: t.set_fontsize(20)或按id设置字体大小:
label = v_test1.get_label_by_id('111')
label.set_fontsize(22) 有关id信息,请查找手册页。
https://stackoverflow.com/questions/45998554
复制相似问题