用matplotlib制作马赛克图

几天没写文章了,一直在转载大佬的文章,我都有点不好意思了......

anyway!今天教大家用Python中的matplotlib制作马赛克图。

进行数据挖掘,数据分析必不可少的两门语言就是R和Python了,这两门语言并不是二择一的,各有各的优点,虽然说Python现在很火,但是R语言的绘图功能也很强大啊。

用于分类变量的列联分析里面有一款图,称为马赛克图,但是Python的matplotlib里面并没有......

首先产生一个dataframe

然后,利用层次化索引和groupby函数进行分组计数: 

处理以产生列联表如下: 

 重点来了,针对每一行产生百分比,以保证每一行和为1。

 

  画柱形图,可以看到两个柱子的高度是一样的,现在就可以比较了,但是还是不太美观。

 

 

  

处理一下柱子的宽度。 

 

 

完成。可以由直观地看出类别foo里面,small占的比例比较大。
此外不同宽度也是可以自己设置的。

更多关于matplotlib绘图的知识参见matplotlib绘图大全

猜你喜欢

转载自blog.csdn.net/weixin_42144636/article/details/81669068