matplotlib 数据可视化,python图形库matplotlib
本文主要介绍Matplotlib数据可视化在Python数据分析应用中的细节。文章围绕主题,详细介绍了内容,具有一定的参考价值。感兴趣的朋友可以参考一下。
00-1010:掌握基本语法和制图基本参数。掌握pyplot的基本语法。pyplot的基本语法包括子图的基本语法。调整线路的rc参数。调整字体rc参数之间的关系。分析特点。绘制散点图。绘制2000-2017季度过敏生产总值散点图。画出2000-2017年各季度国民生产总值散点图。画折线图。绘制2000- 2017季度国民生产总值折线图2000-2017季度国民生产总值折线图2000-2017季度国民生产总值折线图2000-2017季度国民生产总值折线图任务1任务2分析特征内部数据分布和离散情况绘制饼图绘制箱线图任务实现实训
目录
Mat是指函数设计,plot代表绘图的函数,lib代表集合。今年在开源社区的推动下,Matplotlib在科学计算领域得到了广泛的应用,成为Python中使用最广泛的绘图工具之一。Matplotlib模块是使用最广泛的模块。
Matplotlib.pyplot是命令风格函数的集合,这使得Matplotlib的机制更像MATLAB。每个绘图功能都可以对绘图进行一些修改,比如创建一个绘图,在绘图中创建一个绘图区,在绘图区画一些线,用标签装饰绘图等。在pyplot中,各种状态跨函数调用保存,以便跟踪诸如当前图形和绘图区域之类的东西,并且绘图函数总是指向当前轴域。本章介绍并发展了基于pyplot的学习。
学习目标 :
掌握pyplot常用绘图参数的调整方法,子图的绘制方法,绘制图形的保存和显示方法,散点图和折线图的功能和绘制方法,直方图、饼图和箱线图的功能和绘制方法。
简述
pyplot大部分图形绘制都遵循一个流程,这个流程可以用来完成大部分图形的绘制。pyplot的基本绘制过程主要分为三个部分。
创建画布与创建子图:
构建一个空白画布,可以选择是否将整个画布分成多个部分,方便在同一个画面上绘制多个图形。当你只需要画一个简单的图形时,就不需要划分了。
Pyplot创建画布和选择子图的常用函数
添加画布内容:
第二部分是本图的主体。
这些步骤包括添加标题、添加坐标名称、绘制图形等。是平行的,没有顺序。但是添加图例必须在绘制图形之后进行。
在pyplot中添加各种标签和图例的常用函数
保存与显示图形:
第三部分用于保存和显示图形。通常只有两个函数,参数很少。
pyplot中保存数量和显示图形的常用功能
掌握绘图基础语法与基本参数 掌握pyplot基础语法
将numpy作为np导入
将matplotlib.pyplot作为plt导入
#matplotlib inline的意思是在命令行上按行显示图片和运行报纸。
错
data=np.arange(0110.01)
plt.title(lines)# 添加标题
plt.xlabel(x)#添加x轴的名称
plt.ylabel(y)#添加y轴的名称
plt.xlim((0,1))#确定x轴范围
plt.ylim((0,1))#确定y轴范围
plt.xticks([0,0.2,0.4,0.6,0.8,1])#规定x轴刻度
plt.yticks([0,0.2,0.4,0.6,0.8,1])#确定y轴刻度
plt.plot(data,data**2)#添加y=x^2曲线
plt.plot(data,data**4)#添加y=x^4曲线
plt.legend([y=x^2,y=x^4])
plt.savefig( 3-1.png)
plt.show()
包含子图的基础语法
import numpy as np
设置pyplot的动态rc参数:
pyplot使用rc配置文件来自定义图形的各种默认属性,被称为rc配置或rc参数。
默认rc参数可以在python交互式环境中动态更改。所有存储在字变量中的rc参数被称为rcParams。rc参数在修改过后,绘图时使用默认的参数就会改变。
调节线条的rc参数
import numpy as np
import numpy as np
线条常用的rc参数名称。解释与取值:
lines.linstyle参数取值及其含义:
lines.marker参数取值及其意义:
lines.marker取值含义o圆圈D菱形h六边形1H六边形2-水平线8八边形P五边形,像素+加号None无、点s正方形*星号d小菱形v一角朝下的三角形<一角朝左的三角形>一角朝右的三角形^一角朝上的三角形竖线xX
调节字体的rc参数
import numpy as np
import numpy as np
分析特征间的关系
绘制散点图
散点图,是利用坐标即散点的分布形态反映特征间的统计关系的一种图形。值由点在图表中的位置表示,类别由图中的不同标记表示,通常用于比较跨类别的数据。
散点图可以提供两类关键信息:
特征之间是否存在数值或者数量的关联趋势,关联趋势是线性的还是非线性的
如果某个点或者几个点偏离大多数点,这个点就是离群值,通过散点图可以一目了然,从而可以进一步分析这些离群值是否存在建模分析中产生很大的影响。
scatter函数常用参数及说明:
绘制2000-2017年个季度过敏生产总值散点图
import numpy as np
绘制2000-2017年各季度国民生产总值散点图
import numpy as np
绘制折线图
折线图:将数据点按照顺序连接起来的图形。适合用于显示随时间而变化的连续数据。同时还可以看出数量的差异,增长趋势的变化。
pyplot绘制折线图的函数为plot,基本语法如下:
matplotlib.pyplot.plot(*args,**kwargs)
绘制2000-2017年各季度过敏生产总值折线图
import numpy as np
2000~ 2017年各季度国民生产总值点线图
import numpy as np
2000~ 2017年各季度国民生产总值折线散点图
import numpy as np
任务实现
任务1
绘制2000-2017各产业与行业的过敏生产总值散点图:
import numpy as np
任务2
绘制2000-2017各产业与行业的过敏生产总值折线图:
import numpy as np
分析特征内部数据分布与分散状况
直方图、饼图和箱线图是另外3种数据分析常用的图形,主要用于分析数据内部的分布状态和分散状态。
直方图主要用于查看各分组数据的数量分布,以及各个分组数据之间的数量比较。
饼图倾向于查看各分组数据在总数据中的占比。箱线图的主要作用是发现整体数据的分布分散情况。 绘制直方图
在直方图中可以发现分布表无法发现的数据模式、样本的频率分布和总体的分布
puplot中绘制直方图的函数为bar,基本使用语法如下:
matplotlib.pyplot.bar(left,height,width=0.8,bottom=None,hold=None,data=None,**kwargs)
import numpy as np
绘制饼图
饼图(Pie Graph)是将各项的大小与各项总和的比例显示在一张饼中,以饼的大小来确定每一项的占比。饼图可以比较清楚地反映出部分与部分、部分与整体之间的比例关系,易于显示每组数据相对于总数的大小,而且显示方式直观。
pyplot中绘制饼图的函数为pie,其基本使用语法如下:
matplotlib.pyplot.pie(x,explode=None,labels=Nonecolors=None,autopctNone,pctdistance=0.6shadow=False,labeldistance=1.1,startangle=None,radius=None,counterclock=Truewedgeprops=Nonetextprops=Nonecenter=(0.0)frame=False
hold=Nonedata-None)
import numpy as np
绘制箱线图
import numpy as np
任务实现
任务1:
import numpy as np
任务2:
绘制国民生产总值构成分布饼图:
import numpy as np
任务3:
import numpy as np
实训
需求说明:
人口数据总共拥有6个特征,分别为年末总人口、男性人口、女性人口、城镇人口、乡村人口和年份。查看各个特征随着时间推移发生的变化情况可以分析出未来男女人口比例、城乡人口变化的方向。
具体步骤:
(1)使用NumPy库读取人口数据。
(2)创建画布,并添加子图。
(3)在两个子图上分别绘制散点图和折线图。
(4)保存,显示图片。
(5)分析未来人口变化趋势。
import numpy as np
实训2
需求说明:
通过绘制各年份男女人口数目及城乡人口数目的直方图,男女人口比例及城乡人口比例的饼图可以发现人口结构的变化。而绘制每个特征的箱线图则可以发现不同特征增长或者减少的速率是否变得缓慢。
实现步骤:
(1)创建3幅画布并添加对应数目的子图。
(2)在每一幅子图上绘制对应的图形。
(3)保存和显示图形。
(4)根据图形,分析我国人口结构变化情况以及变化速率的增减状况。
import numpy as np
# 绘制饼图
# 绘制箱线图
到此这篇关于Python数据分析应用之Matplotlib数据可视化详情的文章就介绍到这了,更多相关PythonMatplotlib可视化内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。