利用pyvenn画4组以上的韦恩图并改变字体大小
2023-01-17 本文已影响0人
学了忘了学
通常来说matplotlib可以画2-3组的韦恩图,但是当我们有更高的需求的时候,例如需要画4组以上的韦恩图,matplotlib就难以满足我么的需求了。在询问了GPT老师之后发现pyvenn可以解决我们的问题。
这是pyvenn 的官网:GitHub - tctianchi/pyvenn: 2 ~ 6 sets venn diagram for python
使用
当我们下载了pyvenn之后,可以利用sys添加进使用目录:
import sys
sys.path.append(r'/path/to/pyvenn-master')
import venn
绘制4组数据的韦恩图
import matplotlib
import matplotlib.pyplot as plt
# 定义集合
set_a = {1, 2, 3, 4, 5}
set_b = {4, 5, 6, 7, 8}
set_c = {3, 4, 5, 9, 10}
set_d = {3, 4, 6, 8, 10}
# 绘制 Venn 图
labels = venn.get_labels([set_a, set_b, set_c,set_d])
fig, ax = venn.venn4(labels,names = ['a','b','c','d'])
# 获取当前图形
fig = plt.gcf()
# 遍历所有文本对象
for text_obj in fig.findobj(matplotlib.text.Text):
text_obj.set_fontsize(30)
plt.title('Test',fontdict={'weight': 'normal', 'size': 40})
plt.show()
其中可以改变字体大小
for text_obj in fig.findobj(matplotlib.text.Text):
text_obj.set_fontsize(30)
测试