Python matplotlib可视化之绘制韦恩图
本文速览
2组数据venn
3组数据venn
4组数据venn
5组数据venn图
6组数据venn
python中matplotlib并没有现成的函数可直接绘制venn图, 不过已经有前辈基于matplotlib.patches及matplotlib.path开发了两个*:
matplotlib_venn【2~3组数据,比较多博客介绍】:https://github.com/konstantint/matplotlib-venn
pyvenn【2~6组数据】:https://github.com/tctianchi/pyvenn
1、 matplotlib_venn
该模块包含'venn2', 'venn2_circles', 'venn3', 'venn3_circles'四个关键函数,这里主要详细介绍'venn2','venn3'同理。
(1)2组数据venn图
matplotlib_venn.venn2(subsets, set_labels=('a', 'b'), set_colors=('r', 'g'), alpha=0.4, normalize_to=1.0, ax=none, subset_label_formatter=none)
绘图数据格式
subsets参数接收绘图数据集,以下5种方式均可以,注意细微异同。
一些简单参数介绍
所有圈外框属性设置
单个圈特性设置
g.get_patch_by_id('10')返回一个matplotlib.patches.pathpatch对象,有诸多参数可个性化修改 ,详细见matplotlib官网。
单个圈文本设置
g.get_label_by_id('10') 返回一个matplotlib.text.text对象,有诸多参数可个性化修改 ,详细见matplotlib官网。
添加额外注释
多子图绘制venn图
(2)3组数据venn图
matplotlib_venn.venn3(subsets, set_labels=('a', 'b', 'c'), set_colors=('r', 'g', 'b'), alpha=0.4, normalize_to=1.0, ax=none, subset_label_formatter=none)
参数和venn2几乎一样,介绍几个重要参数
基本参数介绍
个性化设置图中7部分每一部分
(100, 010, 110, 001, 101, 011, 111)分别代替每一小块,那么代替的是那一小块了?
2、pyvenn
同样,该库还是基于matplotlib.patches二次开发;
区别于上文,pyvenn支持2到6组数据;matplotlib_venn更加灵活多变。
pyvenn具有'venn2', 'venn3', 'venn4', 'venn5', 'venn6'五大主要函数,这里主要介绍venn2,其它同理。
2组数据venn
venn.draw_annotate、venn.draw_text、venn.venn2中的fill()参数非常助于个性化设置。
3组数据venn
4组数据venn
5组数据venn
6组数据venn
以上就是python matplotlib可视化之绘制韦恩图的详细内容,更多关于python matplotlib韦恩图的资料请关注其它相关文章!
上一篇: Python中字符串对象语法分享