Python 基于 Matplotlib 实现数据可视化(一)

简介: Python 基于 Matplotlib 实现数据可视化

当我们进行数据分析的时候,如果单纯的只有一堆数据摆在你面前,你看起来肯定不舒服。最好能将数据的变化,通过图形呈现出来,在实现数据可视化后,我们就能够更快、更容易、更清晰地看懂数据所要呈现、传达的信息。

Python 在数据展示方面,有非常多好用的工具,比如 Matplotlib、Seaborn、Pygal等,都是颇受欢迎的功能包。我们接下来看看,怎么去实现展示本地的数据,还有从网络中获取到的数据。

可视化视图,大致上我们可以分为 4 大类,分别是:

  • 相互比较:比如折线图,可以进行比较数据间各个类别之间的关系,包括数据随着时间的变化趋势;
  • 相互联系:比如散点图,可以观察到两个或两个以上实例间的关系;
  • 构成占比:比如饼图,可以很直观看到每个部分所占的比例、份额大小,包括其随着时间的比例变化;
  • 分布情况:比如直方图,可以观察单个或多个变量的具体分布情况。

常用的 10 种视图:散点图、折线图、直方图、条形图、饼图、热力图、箱型图、蜘蛛图、二元变量分布图、成对关系。

1、安装 Matplotlib

打开终端,输入 pip install matplotlib即可自动安装。

如果你想要查看 Matplotlib 开发者文档,输入 python -m pydoc -p 8899即可,启动之后再访问 http://localhost:8899,在 .../site-packages栏下找到 matplotlib(package)就是了。

2、折线图

最近大家是不是又看到标题上写着「史上最惨毕业季」的文章啊?其实,每年都是这么写的,每年都是最难、最惨的。

其实,我们可以找到对应的数据,把它画成折线图,你看看就知道毕业生人数的趋势了。

这是 2010 年~2022 年大学毕业生数据(单位:万):

年份 大学毕业生人数(单位:万) 研究生人数
2022 1076 120
2021 909 117.65
2020 874 110.66
2019 834 91.65
2018 821 85.8
2017 795 80.61
2016 765 66.71
2015 749 64.51
2014 700 62.13
2013 699 61.14
2012 680 58.97
2011 660 56.02
2010 631 53.82

2.1 2010 年~2022 年大学毕业生数据

根据上面给出的数据,我们先来绘制一幅折线图,看看从 2010 年到 2022 年之间的大学毕业生人数的变化趋势。其中,我们 X 轴为年份,Y 轴为人数,代码如下:

# 定义 X 轴和 Y 轴数据
# 其中,X 轴为年份;Y 轴为毕业生人数(单位:万)
xData = [2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022]
yData = [631,660,680,699,700,749,765,795,821,834,874,909,1076]
# 参数 1,设置横坐标的值
# 参数 2,设置纵坐标的值
plt.plot(xData, yData, xData, yData2)
# 展示图像
plt.show()

运行结果,如图所示:

2.2 2010 年~2022 年研究生数据

那如果说,我想看看研究生人数是否也这么大的增长幅度,也这么夸张?其实也不难,传入多个代表 X 轴、Y 轴的数据的列表就行了,就可以得到一张复合折线图了。

代码如下:

# 定义 X 轴和 Y 轴数据
# 其中,X 轴为年份;Y 轴为毕业生人数(单位:万)
xData = [2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022]
yData = [631,660,680,699,700,749,765,795,821,834,874,909,1076]
# 加入研究生人数
yData2 = [53.82,56.02,58.97,61.14,62.13,64.51,66.71,80.61,85.8,91.65,110.66,117.65,120]
# 参数 1,设置横坐标的值
# 参数 2,设置纵坐标的值
# 参数 3,设置第二条折线的横坐标的值
# 参数 4,设置第二条折线的纵坐标的值
plt.plot(xData, yData, xData, yData2)
# 展示图像
plt.show()

运行结果,如图所示:

2.3 修改颜色、线条粗细

甚至,你还可以改折线的颜色、粗细,也很简单。比如,通过 color可以指定对应的颜色,通过 linewidth可以指定折线的粗细,代码如下:

# 通过 color 可以指定对应的颜色
# 通过 linewidth 可以指定粗细值
plt.plot(xData, yData, color='orange', linewidth=5.0)
plt.plot(xData, yData2, color='green', linewidth=5.0)
# 展示图像
plt.show()

运行结果,如图所示:

2.4 折线的 4 种样式

如果你不喜欢「实线」的线条,你也可以通过 linestyle来更改,常用的四种类型,分别是:

第一种,- 表示实线(默认值);

第二种:-- 表示虚线;

第三种:: 表示虚点;

第四种:-. 表示短线、点的结合。

代码如下:

plt.plot(xData, yData, color='orange', linewidth=5.0, linestyle='--')
plt.plot(xData, yData2, color='green', linewidth=5.0, linestyle='-.')
# 展示图像
plt.show()

运行结果,如图所示:

3、饼图

3.1 普通饼图

通过饼图,你可以很容易的看到,每个部分的数据所占大小与总体数据之间的比例。在 Matplotlib 中,我们通过 pie(x, labels=None) 函数来绘制饼图,其中 x 代表饼图中的数据,且可以指定多个不同的份额,labels 用来指定饼图的标题。

假设,我们来统计一家水果店的种类份额,很简单的,代码如下:

import matplotlib.pyplot as plt
# 饼图的数据
datas = [22, 30, 35, 8, 15]
# 标签(苹果,梨,桃子,葡萄,樱桃)
labs = ['apple', 'pear', 'peach', 'grape', 'cherry']
plt.pie(x = datas, labels = labs)
plt.show()

运行结果,如图所示:

3.2 分离饼图

如果说,你想特别去突出某一块儿,让它更显眼的话,咱也可以办到。在 pie() 函数中,再指定 explode 就好了。

# 饼图的数据
datas = [22, 30, 35, 8, 15]
# 标签(苹果,梨,桃子,葡萄,樱桃)
labs = ['apple', 'pear', 'peach', 'grape', 'cherry']
# 分离,将 cherry 分离出去
exp = [0,0,0,0,0.15]
plt.pie(x = datas, labels = labs, explode = exp)
plt.show()

运行结果,如图所示:

3.3 饼图的更多设置

当然,你还有很多可以指定的显示方式,比如你可以自定义饼图的颜色、百分比的格式、标签与圆心的距离、饼图的初始角度、圆心、饼图的半径、逆/顺时针方向、圆圈实线、标题等等,大家都可以去多尝试。

代码如下:

import matplotlib.pyplot as plt
# 饼图的数据
datas = [22, 30, 35, 8, 15]
# 标签(苹果,梨,桃子,葡萄,樱桃)
labs = ['apple', 'pear', 'peach', 'grape', 'cherry']
# 分离,将 cherry 分离出去
exp = [0,0,0,0,0.15]
# 自定义颜色
cols = ['orange', 'green', 'blue', 'red', 'purple']
plt.pie(x = datas, 
        labels = labs, 
        explode = exp, 
        colors = cols, 
        autopct = '%.2f%%', # 设置百分比
        textprops = {'fontsize':12, 'color':'black'},# 设置字体属性
       )
# 标题
plt.title('Fruit Shop')
plt.show()

运行结果,如图所示:

Python 基于 Matplotlib 实现数据可视化(二)+

目录
相关文章
|
28天前
|
数据采集 JSON 数据可视化
【python】python懂车帝数据可视化(代码+报告)
【python】python懂车帝数据可视化(代码+报告)
|
2月前
|
数据可视化 数据挖掘 API
Python数据可视化利器Matplotlib详解
本文将深入探讨Python中常用的数据可视化库Matplotlib,介绍其基本概念、常见绘图函数和实例应用。通过学习Matplotlib,读者可以掌握如何利用Python进行数据可视化,展示数据分析结果。
|
2月前
|
数据可视化 数据挖掘 Python
Python数据可视化:探索Matplotlib的强大功能
数据可视化在如今的数据分析和展示中扮演着至关重要的角色。本文将介绍Python中常用的数据可视化库Matplotlib,深入探讨其功能和应用,帮助读者更好地利用Matplotlib进行数据可视化。
|
2月前
|
数据可视化 数据处理 Python
Python数据可视化库Matplotlib的应用与优势探究
本文将深入探讨Python中强大的数据可视化库Matplotlib的应用与优势。通过介绍Matplotlib的基本概念和常用功能,结合具体案例展示其在数据分析和图表绘制中的灵活性和实用性,帮助读者更好地利用这一工具进行数据可视化。
|
2月前
|
机器学习/深度学习 数据可视化 数据处理
Python数据可视化:探索Matplotlib库的强大功能
本文将深入探讨Python中用于数据可视化的重要工具之一——Matplotlib库。通过介绍Matplotlib库的基本概念、常用功能和实际应用案例,帮助读者更好地了解如何利用Matplotlib创建各种吸引人的数据图表。
|
2月前
|
数据可视化 搜索推荐 数据挖掘
Python数据可视化——探索Matplotlib库的强大功能
数据可视化在数据分析和展示中扮演着至关重要的角色,而Matplotlib作为Python中最流行的数据可视化库之一,具有丰富的功能和灵活性。本文将深入探讨Matplotlib库的基本用法和高级功能,带您领略数据可视化的魅力。
|
2月前
|
数据可视化 数据挖掘 Python
Python中的数据可视化利器Matplotlib详解
本文将深入探讨Python中一款强大的数据可视化工具——Matplotlib,介绍其基本用法、常见图表类型以及高级定制技巧,帮助读者更好地利用Matplotlib实现数据可视化需求。
|
2月前
|
数据可视化 数据挖掘 数据处理
Python中的数据可视化技术及应用
数据可视化是数据分析领域中至关重要的一环,Python作为一种流行的编程语言,拥有丰富的数据可视化库和工具。本文将介绍Python中常用的数据可视化技术及其在实际应用中的案例,帮助读者更好地理解和运用数据可视化技术。
|
2月前
|
数据可视化 Shell Python
如何使用Python实现简单的数据可视化
如何使用Python实现简单的数据可视化
13 0
|
12天前
|
数据可视化 数据挖掘 定位技术
Python 基于 Matplotlib 实现数据可视化(二)
Python 基于 Matplotlib 实现数据可视化(二)
22 0