专题第20篇:matplotlib 绘图(中)
Python与算法社区
共 1583字,需浏览 4分钟
·
2020-10-30 05:05
今天,继续施工专题第20篇:matplotlib常用图及功能
我们拿到一堆数据,首先面临的问题是该选用哪类图,去可视化它们,然后才是如何绘制它们。今天这篇文章,解决该选用哪类图去可视化的问题。
根据使用场景不同,参考前人总结,一般划分为6类图。
1 关联关系
用于可视化两个或多个变量之间的相互关系,当一个变量发生变化时,另一个变量与之如何变化。
例如,边缘直方图:
2 排序
3 分布
4 组成
5 变化
6 偏差
例如,发散型条形图:
更多以上每类图的demo参考:
7 小demo:带stacked的柱状图
matplotlib 具有很强的图形表达能力,呈现出stacked的特点,matplotlib中只需要设置一个bottom
属性。如下例子,设置为men
的数据,图表类型依然是bar
图。
import matplotlib.pyplot as plt
labels = ['1', '2', '3', '4', '5']
men = [20, 35, 30, 35, 27]
women = [25, 32, 34, 20, 25]
width = 0.35
fig, ax = plt.subplots()
ax.bar(labels, men, width, label='Men')
# bottom
ax.bar(labels, women, width, bottom=men, label='Women')
ax.legend()
在后面专题绘制更多图形时,我们会更加深入到matplotlib绘图的重要细节中,到那时,我们会有更多的机会了解matplotlib的绘图API,各种属性。
8 seaborn
接下来,我们从以上6类图中,选取几种典型性的图,使用matplotlib绘制出来,基于前人已经绘制的图形基础上,我们再做润色,争取消化它们的同时做出更加美观的可视化图。
提到matplotlib,我们就不得不提seaborn,因为我们知道matplotlib本身已经足够强大,而seaborn又是基于它,开发了一些更加高层的API,让我们绘图更加如虎添翼,没有必要再去重复造轮子,所以能用seaborn的地方,尽量使用它,更少的代码,实现更加强大的可视化图。
如果你喜欢我的这些施工专题文章,欢迎给我点个赞,有时真的坚持不下去了。其实,坚持原创410多篇,并不容易!最近半年,我周末几乎没休息过。
评论