Python数据处理从零开始----第四章(可视化)(5)(韦恩
2018-11-03 本文已影响137人
柳叶刀与小鼠标
目录
Python数据处理从零开始----第四章(可视化)①
Python数据处理从零开始----第四章(可视化)②
Python数据处理从零开始----第四章(可视化)③
Python数据处理从零开始----第四章(可视化)④
Python数据处理从零开始----第四章(可视化)⑤(韦恩图)
=========================================================
正文
使用python绘制韦恩图
下载
easy_install matplotlib-venn
韦恩图依赖于以下的包:
- numpy
- scipy
- matplotlib
使用
matplotlib-venn 包提供了四个主要的函数:venn2、venn2-circles、venn3 和 venn3-circles。
venn2和venn2_circles接受一个3元素(Ab,aB,AB)构成的 tuple 作为各个子集所包含元素的个数(不是具体的元素):
Ab:包含A,但不包含B,即A中非B的部分,A∩¬BA∩¬B
aB:包含B,但不包含A,即B中非A,B∩¬AB∩¬A
AB:既包含A,又包含B,即A与B的交集,A∩B
from matplotlib_venn import venn2, venn2_circles
venn2(subsets=(3, 2, 1), set_labels=('A', 'B'))
venn2([set(['A', 'B', 'C', 'D']), set(['D', 'E', 'F'])])
venn3的绘制方法有一点区别,首先需要熟悉韦恩图各个圆圈的位置或者是代称,如三者的交集,当需要更改这个圆圈的颜色或者字体时,需要使用111。
通过下面的代码我们成功绘制了一个三个数据集的交集
或者说,你直接输入交集的数字直接画图。
from matplotlib import pyplot as plt
import numpy as np
from matplotlib_venn import venn3, venn3_circles
plt.figure(figsize=(4,4))
v = venn3(subsets=(2307,382,1409,333,556,120,4774),set_labels = ('A', 'B', 'C'))
plt.show()
该包的官方网址:https://pypi.org/project/matplotlib-venn/
该包的github地址:https://github.com/konstantint/matplotlib-venn/tree/master/tests
Python数据处理从零开始----第四章(可视化)(5)(韦恩图)