《机器学习技术》课件 第一章任务1.2 matplotlib库_第1页
《机器学习技术》课件 第一章任务1.2 matplotlib库_第2页
《机器学习技术》课件 第一章任务1.2 matplotlib库_第3页
《机器学习技术》课件 第一章任务1.2 matplotlib库_第4页
《机器学习技术》课件 第一章任务1.2 matplotlib库_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单元1任务1.2

机器学习任务1.2matplotlib库matplotlib库是Python的绘图库,也是一个非常强大的Python画图工具,我们可以使用该工具将很多数据通过图表的形式更直观地呈现出来,方式包括线图、散点图、等高线图、条形图、柱状图、三维图形甚至图形动画等。①plt.savefig('test',dpi=600):将绘制的图画保存成png格式,命名为test。②plt.axis([-1,10,0,6]):x轴起始于-1,终止于10;y轴起始于0,终止于6。③plt.subplot(3,2,4):分成3行2列,共6个绘图区域,在第4个区域绘图,排序为行优先。(1)一般函数任务1.2plt.plot(x,y,format_string,**kwargs)①x为x轴数据,可为列表或数组。y同理。②format_string为控制曲线的格式字符串,由颜色字符、风格字符和标记字符组成。a.颜色字符:'b'蓝色,'#008000'表示RGB中的一个颜色,'0.8‘表示灰度值字符串。b.风格字符:'-

'实线,'–'破折号,'-.

'表示点划线,':'表示虚线,'

'表示无线条。c.标记字符:'.'点标记,'o'实心圈,'v

'倒三角,'^'表示上三角。③**kwargs第二组或更多的(x,y,format_string)。(2)plot函数任务1.2①rcParams:pyplot默认不支持中文显示,用rcParams修改字体才可以显示中文。②'font.family':用于显示字体的名字。③'font.style':用于设置字体的风格,正常'normal'或斜体'italic'。④‘font.size’:用于设置字体的大小,可设置为整数字号或者'large''x-small'。(3)显示中文字符(4)文本显示函数①plt.xlabel():对x轴增加文本标签。②plt.ylabel():对y轴增加文本标签。③plt.title():对图形整体增加文本标签。④plt.text():在任意位置增加文本。任务1.2①plt.plot(x,y,fmt):绘制坐标图。②plt.boxplot(data,notch,position):绘制箱形图。③plt.bar(left,height,width,bottom):绘制条形图。④plt.barh(width,bottom,left,height):绘制横向条形图。⑤plt.polar(theta,r):绘制极坐标图。⑥plt.pie(data,explode):绘制饼图。⑦plt.scatter(x,y):绘制散点图。⑧plt.hist(x,bings,normed):绘制直方图。(5)Plot库的图表函数任务1.2-例1importmatplotlib.pyplotasplt

importnumpyasnp

plt.rcParams[‘font.family’]=[‘SimHei’]#设置中文显示字体库

plt.rcParams[‘font.size’]=16

plt.rcParams[‘axes.unicode_minus’]=False#防止坐标轴上的符号显示异常

x=np.arange(-10,10,0.5)

y1=x/2

y2=np.sin(x)

plt.plot(x,y1,'-sr',x,y2,'-.og')

plt.title('一次函数与正弦函数')

plt.xlabel('x轴')

plt.ylabel('y轴')

plt.legend(['line','sin'])

plt.show()

在同一张图中以不同形式画出一次函数和正弦函数图,并设置标题、坐标轴名称及图例任务1.2-例2散点图和柱状图的绘制结果随机生成一组数据,在同一窗口的不同图表中分别以散点图和柱状图展示数据。(任务1.2源码example2.py)运行结果如下:任务1.2-例3随机生成一组数据,绘制直方图,并把直方图统计结果绘制成饼图,两张图要在同一窗口的不同图表中。(任务1.3源码example3.py)运行结果如下:任务1.2seaborn库也是Python的绘图库,是基于matplotlib库实现进一步封装的函数库,具有多种特性,例如内置主题、调色板,可视化单变量数据、双变量数据、线性回归数据、数据矩阵及统计型时序数据等,创建富含信息量和美观的统计图形,以及创建更加复杂的可视化图形。因为seaborn库是在matplotlib库的基础上扩展的,所以在此只介绍一些seaborn库特有且常用的函数。matplotlib库绘图的默认图像样式算不上美观,可以使用seaborn库完成快速优化,只需要将seaborn库提供的样式声明代码sns.set()放置在绘图代码前即可。(1)样式参数设置函数——set任务1.2sns.set()的默认参数为sns.set(context=‘notebook’,style=‘darkgrid’,palette=‘deep’,font=‘sans-serif’,font_scale=1,color_codes=False,rc=None)context=''参数控制默认的画幅大小,有{paper,notebook,talk,poster}四个值。其中,poster>talk>notebook>paper。style=''参数控制默认样式,有{darkgrid,whitegrid,dark,white,ticks},你可以自行更改参数,以查看它们之间的不同。palette=‘’参数为预设的调色板,有{deep,muted,bright,pastel,dark,colorblind}等,你可以自行更改参数,以查看它们之间的不同。剩下的font=''参数用于设置字体,font_scale=用于设置字体大小;color_codes=False,不使用调色板,而采用先前的'r'等色彩缩写。任务1.2(2)关联图关联图用于呈现数据关联之后的关系,主要有散点图和线形图两种样式,适用于不同类型的数据①散点图a.指定x和y的特征,默认可以绘制出散点图(iris为示例数据集)。sns.scatterplot(x="sepal_length",y="sepal_width",data=iris)b.加入类别特征,对数据进行着色,散点图会更加直观。sns.scatterplot(x="sepal_length",y="sepal_width",hue="species",data=iris)c.指定style参数可以赋予不同类别的散点不同的形状。sns.scatterplot(x="sepal_length",y="sepal_width",hue="species",style="species",data=iris)②线形图。线形图还可以通过lineplot函数实现sns.lineplot(x="sepal_length",y="petal_length",hue="species",style="species",data=iris)任务1.2(3)类别图a.用stripplot函数可以绘制普通散点图。sns.stripplot(x="sepal_length",y="species",data=iris)b.用swarmplot函数可以使散点按照beeswarm的方式防止重叠,从而更好地观测数据分布。sns.swarmplot(x="sepal_length",y="species",data=iris)②箱线图boxplot。sns.boxplot(x="sepal_length",y="species",data=iris)③增强箱线图boxenplot。sns.boxenplot(x="sepal_length",y="species",data=iris)①散点图stripplot、swarmplot。类别图按照展示类型可以分为7类任务1.2④小提琴图violinplot。sns.violinplot(x="sepal_length",y="species",data=iris)⑤点线图pointplot。sns.pointplot(x="sepal_length",y="species",data=iris)⑥条形图barplot。sns.barplot(x="sepal_length",y="species",data=iris)⑦计数条形图countplot。sns.countplot(x="species",data=iris)任务1.2(4)分布图——distplot、kdeplot、jointplot、pairplot。(5)回归图——replot、Implot。(6)矩阵图——heatmap、clustermap。(7)组合图任务1.2-例4通过seaborn.set函数优化以上3个例题importseabornassnssns.set()只需在上述3个例题的代码中添加以下2行代码,即可实现图表样式的修改任务1.2任务1.2-例5首先导入函数库,加载鸢尾花数据集,并打印数据集,查看数据格式importmatplotlib.pyplotaspltimportnumpyasnpimportseabornassnsiris=sns.load_dataset("iris")print(iris)数据集有5列,分别是花萼长度、花萼宽度、花瓣长度、花瓣宽度及鸢尾花类别。数据类别有3种:山鸢尾、变色鸢尾及维吉尼亚鸢尾。任务1.2-例5用鸢尾花数据集绘制花萼长度与花萼宽度的关系散点图,需要在调用绘制函数后,调用plt.show()函数来显示图像。sns.scatterplot(x="sepal_length",y="sepal_width",hue="species",style="species",data=iris)任务1.2-例5绘制花萼长度与花萼宽度的关系折线图绘制花萼长度类别散点图任务1.2-例5绘制花萼长度类别不重叠散点图绘制花萼长度类别箱型图任务1.2-例5绘制花萼长度类别增强箱型图绘制花萼长度类别小提琴图任务1.2-例5绘制花萼长度类别点线图绘制花萼长度类别条形图任务1.2-例5绘制花萼长度类别计数条形图绘制花萼长度单变量分布图绘制花萼长度核密度估计图绘制花萼长度与花萼宽度的二元变量分布图花萼长度与花萼宽度的二元变量分布核密度估计对比图任务1.2-例5绘制花萼长度与花萼宽度的二元变量分布六边形计数图绘制花萼长度与花萼宽度的二元变量分布回归拟合图任务1.2-例5一次性绘制鸢尾花数据集的两两对比图任务1.2-例5绘制花萼长度与花萼宽度的线性回归拟合图绘制花萼长度与花萼宽度的分类线性回归拟合图任务1.2-例5自拟数据绘制热图sns.heatmap(np.random.rand(10,10))利用花萼和花瓣的长宽数据绘制层次聚类结构图任务1.2对纸币真假数据集在训练前进行可视化分析。保存训练过程中的数据,对模型训练过程进行可视化化分析绘制了data_part的特征列之间的散点图,并按照目标变量(truth)进行了颜色分组。任务1.2绘制了data_all的两个特征列(skewness

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论