项目6 Python数据可视化_第1页
项目6 Python数据可视化_第2页
项目6 Python数据可视化_第3页
项目6 Python数据可视化_第4页
项目6 Python数据可视化_第5页
已阅读5页,还剩119页未读 继续免费阅读

下载本文档

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

文档简介

数据可视化技术与应用案例教程所有教学资源,我们给;所有复杂操作,我们做;图书附赠,永久免费,只为老师用书更方便课件教案微课扫码题库建课互评考试平台

学习工具目录03Excel数据可视化04Tableau数据可视化05ECharts数据可视化06Python数据可视化01数据可视化基础02数据可视化设计项目6Python数据可视化项目6Python数据可视化项目导读Python是一种简单易学、跨平台、可扩展的高级编程语言,它广泛应用于网络爬虫、数据分析、数据可视化、人工智能等多个领域。Python提供了多个可视化库,用户可以根据具体需求选择合适的可视化库来实现数据可视化。项目目标知识目标技能目标素质目标熟悉Python的特点和常用的Python可视化库。熟悉Python数据可视化的基本流程。熟悉matplotlib库中常用的绘制图表的函数。能够搭建Python数据可视化开发环境。能够选择合适的图表展示不同的数据。能够使用Python绘制不同的图表,实现数据可视化。培养逻辑思维能力,提高数据洞察能力。持续关注前沿技术,不断开阔视野,拓展知识面。项目准备全班学生以3~6人为一组进行分组,各组选出组长。组长组织组员观看“常用的Python可视化库对比分析”视频,讨论并回答下列问题。问题1:常用的Python可视化库有哪些?它们的特点是什么?问题2:如果需要灵活控制图表的细节,通常选择哪个Python可视化库绘制图表?常用的Python可视化库对比分析扫码看微课呀!点击播放微课6.1Python概述项目6Python数据可视化6.1Python概述>6.1.1Python的特点特点说明简单易学语法简洁明了,代码可读性高,减少了开发人员的学习和理解成本标准库和第三方库丰富拥有丰富的标准库,使用这些标准库能够实现文件操作、系统调用、网络通信、数据结构处理等众多功能;支持导入大量的第三方库,使用这些第三方库能够实现数据读取、数据处理、科学计算、数据分析、数据可视化、Web开发等众多功能跨平台兼容性好使用Python编写的代码可以在Windows、macOS、Linux等多种操作系统上运行集成性强Python的模块化设计使得不同的库和框架可以轻松地集成在一起,从而形成一个完整的数据操作流程,包括数据读取、数据处理、数据分析和数据可视化等数据处理能力强能够轻松处理大规模数据,并支持对数据进行实时更新6.1Python概述>6.1.1Python的特点Python拥有丰富的库,开发人员使用这些库能够实现不同的功能,极大地提高了开发效率。然而,这些库通常是由不同的团队或社区根据各自的需求独立开发的,它们的编程风格和API结构存在差异。因此,开发人员在使用不同的库时,需要学习和适应不同库的语法格式和编程风格。6.1Python概述>6.1.2Python中常用的可视化库Python中最基础的可视化库,用户使用它可以绘制各种类型的图表。此外,matplotlib库支持用户对图表的各个元素(如图表标题、坐标轴、文本标签、网格线等)和图表的样式进行设置。用途:绘制静态图表,如折线图、面积图、柱形图、条形图、饼图等,适用于需要对图表进行高度定制化的场景。1.matplotlib库基于matplotlib的高级可视化库,它提供了许多样式主题和调色板,帮助用户轻松地绘制出更加美观的图表。用途:绘制更加精美、有吸引力的统计图表,如直方图、回归图、箱形图、小提琴图等,适用于科研数据展示和报告演示等场景。2.seaborn库6.1Python概述>6.1.2Python中常用的可视化库一个封装了ECharts的Python可视化库,用户使用它可以绘制出ECharts图表。pyecharts库提供了丰富的图表样式和高级功能(如动画效果、主题定制等),以满足不同应用场景的需求。用途:绘制精美、交互式、个性化的图表,适用于实时监控数据和商业报表展示等场景。3.pyecharts库一个功能强大的Python可视化库,它提供了多种图表类型,并支持多种交互功能,包括缩放图表、平移图表、悬停提示、筛选数据等。使用plotly库绘制的图表可以在浏览器中显示。用途:绘制高质量、交互式的图表,适用于需要在网页或应用程序中嵌入交互式图表的场景。4.plotly库6.2Python数据可视化开发环境的搭建项目6Python数据可视化6.2Python数据可视化开发环境的搭建>6.2.1安装Python使用浏览器访问Python的官方下载页面(/downloads/windows),在打开的下载页面中单击“StableReleases”列表中“Python3.12.7-Oct.1,2024”子列表中的“Windowsinstaller(64-bit)”链接文字。步骤1下载Python安装文件6.2Python数据可视化开发环境的搭建>6.2.1安装Python双击下载的“python-3.12.7-amd64.exe”文件,在打开的“Python3.12.7(64-bit)Setup”对话框中勾选“Useadminprivilegeswheninstallingpy.exe”和“Addpython.exetoPATH”复选框,然后选择“Customizeinstallation”选项。勾选复选框并选择“Customizeinstallation”选项步骤2下载Python安装文件时,应根据操作系统的类型(32位或64位操作系统)选择合适的版本进行下载。小提示6.2Python数据可视化开发环境的搭建>6.2.1安装Python进入“OptionalFeatures”界面,选择Python提供的工具包,一般保持默认的全部勾选,然后单击“Next”按钮。步骤3选择Python提供的工具包6.2Python数据可视化开发环境的搭建>6.2.1安装Python进入“AdvancedOptions”界面,在“Customizeinstalllocation”编辑框中输入安装路径(如“D:\SoftWare_book\Python3.12.7”,也可单击“Browse”按钮选择安装路径),然后单击“Install”按钮。步骤4设置安装路径6.2Python数据可视化开发环境的搭建>6.2.1安装Python进入“SetupProgress”界面,开始安装并显示安装进度;安装成功后,进入“Setupwassuccessful”界面,在该界面中单击“Close”按钮。步骤5按“Win+R”组合键打开“运行”对话框,在“打开”编辑框中输入“cmd”,单击“确定”按钮,然后在打开的命令提示符窗口中输入“python”并按“Enter”键,输出Python的版本信息,证明Python安装成功。步骤6查看Python是否安装成功6.2Python数据可视化开发环境的搭建>6.2.2安装和使用PyCharm使用浏览器访问PyCharm的官方下载页面(https:///pycharm/download),在打开的页面中单击“Otherversions”链接文字。步骤1PyCharm的官方下载页面6.2Python数据可视化开发环境的搭建>6.2.2安装和使用PyCharm在打开的历史下载页面中找到“Version2024.2”版本,单击该版本右侧的下拉列表框,在展开的下拉列表中选择“2024.2.4”选项,在“PyCharmCommunityEdition”列表中单击“2024.2.4-Windows(exe)”链接文字,下载PyCharm安装文件。步骤2下载PyCharm安装文件6.2Python数据可视化开发环境的搭建>6.2.2安装和使用PyCharm双击下载的“pycharm-community-2024.2.4.exe”文件,打开“PyCharmCommunityEdition安装”对话框,单击“下一步”按钮。步骤3进入“选择安装位置”界面,选择安装位置,此处为“D:\SoftWare_book\PyCharm”,然后单击“下一步”按钮。步骤46.2Python数据可视化开发环境的搭建>6.2.2安装和使用PyCharm进入“安装选项”界面,勾选所有复选框,然后单击“下一步”按钮。步骤5进入“选择开始菜单目录”界面,配置开始菜单文件夹,此处保持默认名称,单击“安装”按钮。此时,开始安装PyCharm,并在“安装中”界面中显示安装进度。步骤6设置安装选项6.2Python数据可视化开发环境的搭建>6.2.2安装和使用PyCharm等待片刻,PyCharm安装完成后,进入“PyCharmCommunityEdition安装程序结束”界面,单击“完成”按钮。步骤7完成安装默认选中该单选钮,用户也可根据实际情况选择何时重新启动计算机6.2Python数据可视化开发环境的搭建>6.2.2安装和使用PyCharm设置语言和地区。双击桌面上的PyCharm图标,启动PyCharm,在“语言和地区”界面分别选择“Chinese(Simplified)中文语言包”和“中国大陆”选项,单击“下一个”按钮。步骤8设置语言和地区6.2Python数据可视化开发环境的搭建>6.2.2安装和使用PyCharm设置PyCharm用户协议。进入“PyCharm用户协议”界面,勾选“我确认我已阅读并接受此《用户协议》的条款”复选框,单击“继续”按钮。步骤9设置数据共享。进入“数据共享”界面,单击“不发送”按钮。步骤106.2Python数据可视化开发环境的搭建>6.2.2安装和使用PyCharm设置主题颜色。进入欢迎界面,在该界面左侧选择“自定义”选项,然后在右侧的“外观”区域中单击“主题”下拉列表框,在展开的下拉列表中选择“Light”选项。步骤11设置主题颜色6.2Python数据可视化开发环境的搭建>6.2.2安装和使用PyCharm在欢迎界面左侧选择“项目”选项,然后在右侧选择“新建项目”选项。步骤12选择“新建项目”选项6.2Python数据可视化开发环境的搭建>6.2.2安装和使用PyCharm打开“新建项目”对话框,在“名称”编辑框中输入项目名称(此处为“python数据可视化”),在“位置”编辑框右侧单击“浏览”按钮,选择项目的存储路径(此处为“D:\SoftWare_book\PyCharm\pythonCode”),“Python版本”编辑框中会自动填充在系统中检测到的Python,单击“创建”按钮。步骤13新建项目6.2Python数据可视化开发环境的搭建>6.2.2安装和使用PyCharm“Python版本”下拉列表如果没有提前安装Python,还可以怎样安装PyCharm呢?用户也可以不提前安装Python,直接在PyCharm的“新建项目”对话框中单击“Python版本”下拉按钮,在展开的下拉列表中选择需要的Python版本。该方法只能下载PyCharm提供的特定版本的Python。6.3Python数据可视化的基本流程项目6Python数据可视化6.3Python数据可视化的基本流程绘制图表显示图表准备数据Python数据可视化的基本流程创建画布导入库或模块运行代码设置图表元素设置图表样式6.3Python数据可视化的基本流程>6.3.1导入库或模块导入库的关键字:import导入matplotlib库的示例代码如下。

pyplot是matplotlib库中的核心模块,该模块中包含一系列的函数,使用这些函数能够绘制多种类型的图表,并对图表中的元素(如图表标题、坐标轴、文本标签等)进行设置。

导入matplotlib库中的pyplot模块的示例代码如下。importmatplotlibimportmatplotlib.pyplot6.3Python数据可视化的基本流程>6.3.1导入库或模块as:设置别名,示例代码如下。高手点拨#导入matplotlib库,并设置其别名importmatplotlibasmpl#导入matplotlib库中的pyplot模块,并设置其别名 importmatplotlib.pyplotasplt 6.3Python数据可视化的基本流程>6.3.2准备数据读取和处理数据中最常用的库:Python科学计算的基础库,可用于处理多维数组和矩阵数据。01numpy库提供了多种内置的数学函数三角函数指数函数对数函数统计函数它是基于numpy库创建的,专门用于处理结构化数据。pandas库支持读取多种文件(如CSV文件、Excel文件、SQL文件、JSON文件、HTML文件)中存储的数据。02pandas库使用pandas库读取数据的示例代码如下。#导入pandas库,并设置其别名importpandasaspd #读取Excel文件中的数据df=pd.read_excel('data.xlsx') 6.3Python数据可视化的基本流程>6.3.2准备数据pandas库提供的read_excel()函数用于读取Excel文件中的数据,该函数的语法格式如下。高手点拨pandas.read_excel(io,sheet_name,header,dtype)io表示文件存放的路径;sheet_name用于指定要读取的工作表名称或索引,默认值为0(表示第1个工作表);header用于指定列名所在的行号,默认值为0(表示第1行为列名);dtype用于设置指定列的数据类型。6.3Python数据可视化的基本流程>6.3.3创建画布使用pyplot模块中的figure()函数可创建一张空白画布,该函数的语法格式如下。pyplot.figure(num=1,figsize=(6.4,4.8),facecolor='white')

num:用于设置画布的编号或名称。

参数值整数,表示画布的编号,如果创建多张画布,则编号会依次增加;字符串,表示画布的名称。当参数赋有值时,该值表示参数的默认值。在figure()函数中,num参数的默认值为1。例高手点拨

figsize:用于设置画布的大小。

参数值:一个元组,其中的元素分别表示画布的宽度和高度,单位默认为英寸。6.3Python数据可视化的基本流程>6.3.3创建画布使用pyplot模块中的figure()函数可创建一张空白画布,该函数的语法格式如下。pyplot.figure(num=1,figsize=(6.4,4.8),facecolor='white')

facecolor:用于设置画布的背景颜色,默认值为white(白色)。

颜色的取值十六进制颜色代码,如“#FF0000”;RGB元组,如“(1.0,0,0)”;颜色的全称,如“red”;颜色的缩写,如“b”(蓝色)、“g”(绿色)、“r”(红色)、“c”(蓝绿色)、“m”(洋红色)、“y”(黄色)、“k”(黑色)、“w”(白色)。nrows:用于设置画布被划分的行数。ncols:用于设置画布被划分的列数。index:用于设置当前子图的索引位置,取值范围为1~nrows×ncols。6.3Python数据可视化的基本流程>6.3.3创建画布一张画布中默认只有一个子图(绘图区),使用pyplot模块提供的subplot()函数可在一张画布中创建多个子图,以便在同一张画布中的多个绘图区中绘制图表。创建子图的语法格式如下。pyplot.subplot(2,3,5)表示:将画布划分为2行、3列,并在第5个绘图区绘制图表。例pyplot.subplot(nrows=1,ncols=1,index=1)6.3Python数据可视化的基本流程>6.3.3创建画布高手点拨当一张画布中有多个子图时,可以使用pyplot模块提供的subplots_adjust()函数调整子图的间距,该函数的语法格式如下。pyplot.subplots_adjust(hspace=0.2,wspace=0.2)hspace用于设置上、下子图的间距;wspace用于设置左、右子图的间距。6.3Python数据可视化的基本流程>6.3.4绘制图表柱形图饼图面积图pyplot模块提供了多种绘图函数,使用这些函数可以绘制不同类型的图表条形图折线图散点图直方图气泡图箱形图词云6.3Python数据可视化的基本流程>6.3.5设置图表元素设置图表元素图表标题设置坐标轴设置文本标签设置网格线设置图例6.3Python数据可视化的基本流程>6.3.5设置图表元素pyplot模块中的title()函数,该函数的语法格式如下。pyplot.title(label,loc='center',pad=6.0,color=None,fontsize=None)label:用于设置图表标题的名称。loc:用于设置图表标题的位置。该参数的值为left(画布左侧)、right(画布右侧)或center(居中)等。pad:用于设置图表标题与图表的间距,单位默认为点(1点等于1/72英寸)。color:用于设置图表标题的字体颜色。当该参数的值为None(默认值)时,系统会根据一定的规则为图表标题的字体设置一个颜色。fontsize:用于设置图表标题的字体大小,单位默认为点。1.设置图表标题6.3Python数据可视化的基本流程>6.3.5设置图表元素2.设置坐标轴设置坐标轴设置坐标轴标题设置坐标轴数据范围设置坐标轴刻度设置坐标轴属性pyplot模块中的xlabel()和ylabel()函数,这些函数的语法格式如下。pyplot.xlabel(xlabel,fontsize=None) #X轴标题pyplot.ylabel(ylabel,fontsize=None) #Y轴标题6.3Python数据可视化的基本流程>6.3.5设置图表元素2.设置坐标轴pyplot模块中的xlim()和ylim()函数,这些函数的语法格式如下。pyplot.xlim(x_min,x_max) #X轴数据范围pyplot.ylim(y_min,y_max) #Y轴数据范围x_min:用于设置X轴的最小值。x_max:用于设置X轴的最大值。y_min:用于设置Y轴的最小值。y_max:用于设置Y轴的最大值。设置坐标轴设置坐标轴标题设置坐标轴数据范围设置坐标轴刻度设置坐标轴属性6.3Python数据可视化的基本流程>6.3.5设置图表元素2.设置坐标轴pyplot模块中的xticks()和yticks()函数,这些函数的语法格式如下。pyplot.xticks(ticks,labels,rotation=None,fontsize=None) #X轴刻度pyplot.yticks(ticks,labels,rotation=None,fontsize=None) #Y轴刻度ticks:用于设置坐标轴刻度的位置。例如,“ticks=[1,2,3]”表示在坐标轴的1、2、3位置上显示刻度。labels:用于设置与刻度位置对应的刻度标签。该参数在设置了ticks参数后才有效。rotation:用于设置刻度标签旋转的角度。设置坐标轴设置坐标轴标题设置坐标轴数据范围设置坐标轴刻度设置坐标轴属性6.3Python数据可视化的基本流程>6.3.5设置图表元素同时设置ticks和labels参数,需要注意什么呢?如果同时设置了ticks和labels参数,则它们的长度必须相同,且每个刻度位置对应一个刻度标签;如果只设置了ticks参数而未设置labels参数,则刻度标签将使用默认的数字表示。6.3Python数据可视化的基本流程>6.3.5设置图表元素2.设置坐标轴pyplot模块中的axis()函数,该函数的语法格式如下。pyplot.axis(arg=None)Arg:表示坐标轴的属性。参数值on(开启坐标轴,默认值)off(关闭坐标轴)equal(坐标轴的比例相同)scaled(自动调整坐标轴的刻度)auto(自动调整坐标轴范围)设置坐标轴设置坐标轴标题设置坐标轴数据范围设置坐标轴刻度设置坐标轴属性6.3Python数据可视化的基本流程>6.3.5设置图表元素3.设置文本标签pyplot模块中的text()函数,该函数的语法格式如下。pyplot.text(x,y,s,fontsize=None,ha='center',va='center')x:用于设置文本标签的X轴坐标。y:用于设置文本标签的Y轴坐标。s:用于设置文本标签的内容。ha:用于设置文本标签的水平对齐方式。该参数的值为left(左对齐)、right(右对齐)或center(居中对齐)等。va:用于设置文本标签的垂直对齐方式。该参数的值为top(顶部对齐)、center(居中对齐)或bottom(底部对齐)等。6.3Python数据可视化的基本流程>6.3.5设置图表元素4.设置网格线pyplot模块中的grid()函数,该函数的语法格式如下。pyplot.grid(axis='both')axis:用于设置显示网格线的坐标轴方向。参数值值为x时,表示在X轴方向显示网格线;值为y时,表示在Y轴方向显示网格线;值为both(默认值)时,表示在X轴和Y轴方向均显示网格线。6.3Python数据可视化的基本流程>6.3.5设置图表元素5.设置图例pyplot模块中的legend()函数,该函数的语法格式如下。pyplot.legend(labels=None,loc='best')labels:用于设置图例中每个数据系列对应的标签。如果没有设置该参数,legend()函数会根据绘图函数中label参数的值自动生成标签;如果绘图函数和legend()函数中均未设置标签,则不显示图例。6.3Python数据可视化的基本流程>6.3.5设置图表元素5.设置图例取值说明取值说明取值说明best(默认值)自适应lowerright右下方centerleft左侧居中upperright右上方lowerleft左下方right右侧upperleft左上方lowercenter下方居中center居中uppercenter上方居中centerright右侧居中——pyplot.legend(labels=None,loc='best')loc:用于设置图例的位置。loc参数的具体取值pyplot模块中的legend()函数,该函数的语法格式如下。6.3Python数据可视化的基本流程>6.3.5设置图表元素图例应该在图表绘制前进行还是图表绘制完成后进行?由于图例是基于图表的绘图函数动态生成的,因此设置图例的操作须在图表绘制完成后进行。6.3Python数据可视化的基本流程>6.3.6设置图表样式matplotlib库中的style模块提供了多种预定义的样式,应用这些样式可以快速设置图表的样式。查看style模块中预定义的样式1.使用style模块设置图表样式style模块中预定义的样式应用样式print(plt.style.available)style.use('ggplot')6.3Python数据可视化的基本流程>6.3.6设置图表样式rcParams是matplotlib库中的一个全局配置参数,用于控制图表的属性,如画布大小、线条宽度、线条类型、线条的标记类型、线条的标记大小、无衬线字体的具体名称、字体大小、坐标轴刻度线的显示方向等。功能:可以一次性更改多个图表的样式,而无需在每次绘图时单独设置每个参数。2.使用rcParams全局配置参数设置图表样式示例代码:#设置线条宽度pyplot.rcParams['lines.linewidth']=2 #设置无衬线字体的具体名称plt.rcParams['font.sans-serif']='SimHei' 6.3Python数据可视化的基本流程>6.3.6设置图表样式2.使用rcParams全局配置参数设置图表样式配置项说明figure.figsize画布大小lines.linewidth线条宽度lines.linestyle线条类型lines.marker线条的标记类型lines.markersize线条的标记大小font.sans-serif无衬线字体的具体名称,该配置项的值为SimHei(黑体)、KaiTi(楷体)、FangSong(仿宋)或MicrosoftYaHei(微软雅黑)等。当图表中包含中文时,为确保中文能够正确显示,需将该配置项设置为系统中已安装且支持显示中文的字体名称font.size字体大小xtick.direction/ytick.directionX轴或Y轴刻度线的显示方向,该配置项的值为out(向外,默认值)或in(向内)rcParams全局配置参数中的常用配置项6.3Python数据可视化的基本流程>6.3.7显示图表保存图表显示图表pyplot.show()pyplot.savefig(fname)fname表示图表的名称,该名称中可以包含路径。将图表保存在D盘根目录下,并将其命名为“产品总成本.png”,示例代码如下。pyplot.savefig('D:/产品总成本.png')如果想显示图表的同时保存图表,则savefig()函数必须在show()函数前执行。例6.3Python数据可视化的基本流程>6.3.8运行代码使用PyCharm运行Python文件,在打开的图表窗口中展示图表。6.4使用Python绘制图表项目6Python数据可视化6.4使用Python绘制图表>6.4.1折线图使用pyplot模块中的plot()函数可绘制折线图,该函数的语法格式如下。pyplot.plot(x,y,label=None,color=None,linestyle='-',linewidth=None,marker=None,markersize=None)x:用于设置X轴的数据。y:用于设置Y轴的数据。label:用于设置折线的标签,该参数的值可被legend()函数(设置图例的函数)获取。linestyle:用于设置线条的类型。该参数的值为“-”(实线)、“--”(双画线)、“-.”(点画线)或“:”(虚线)等。linewidth:用于设置线条的宽度,单位默认为点。6.4使用Python绘制图表>6.4.1折线图pyplot.plot(x,y,label=None,color=None,linestyle='-',linewidth=None,marker=None,markersize=None)marker:用于设置标记的类型。markersize:用于设置标记的大小,单位默认为点。取值标记类型取值标记类型取值标记类型.点1下花三角h竖六边形,像素2上花三角H横六边形o实心圆3左花三角+加号v倒三角4右花三角×叉号^上三角s实心正方形D大菱形>右三角p实心五边形d小菱形<左三角*星形|垂直线使用pyplot模块中的plot()函数可绘制折线图,该函数的语法格式如下。6.4使用Python绘制图表>6.4.1折线图r:o表示什么?当颜色的取值为颜色的缩写时,可以将其与线条类型、标记类型组合,以便灵活地设置线条样式。“r:o”表示红色的实心圆虚线。6.4使用Python绘制图表>6.4.1折线图【例6-1】“全国人口年度数据.xlsx”文件中包含2003年至2023年的年度人口数据。绘制折线图,展示2003年至2023年城镇人口和乡村人口数据。“全国人口年度数据.xlsx”文件中的数据6.4使用Python绘制图表>6.4.1折线图新建目录。在PyCharm中右击“python数据可视化”目录,在弹出的快捷菜单中选择“新建”选项,在展开的子菜单中选择“目录”选项,然后在打开的“新建目录”编辑框中输入“例题”,并按“Enter”键。步骤1新建目录6.4使用Python绘制图表>6.4.1折线图安装Python库。单击PyCharm工作界面左侧边栏中的“Python软件包”按钮,在打开的“Python软件包”面板的搜索框中输入“matplotlib”,单击右侧的“安装软件包”按钮,安装matplotlib库;使用同样的方式安装pandas库和openpyxl库。步骤2安装matplotlib库6.4使用Python绘制图表>6.4.1折线图openpyxl是一个用于处理Excel文件的Python库,使用它可以读取、修改Excel文件中的数据,还可以将数据写入Excel文件。需要注意的是,在使用openpyxl库提供的相关函数时,Python会自动导入openpyxl库,不需要使用import关键字导入。高手点拨6.4使用Python绘制图表>6.4.1折线图新建Python文件。右击“例题”目录,在弹出的快捷菜单中选择“新建”选项,在展开的子菜单中选择“Python文件”选项,然后在打开的“新建Python文件”编辑框中输入“line”,并按“Enter”键。步骤36.4使用Python绘制图表>6.4.1折线图界面显示打开的“line.py”文件,在该文件中编写代码。参考代码如下。步骤4#导入pandas库,并设置其别名importpandasaspd #导入matplotlib库中的pyplot模块,并设置其别名importmatplotlib.pyplotasplt#读取Excel文件中的数据file_path=r'D:\素材与实例\项目6\全国人口年度数据.xlsx'data=pd.read_excel(file_path)#提取年份和数据列(城镇人口和乡村人口)years=data['年份']urban_population=data['城镇人口(万人)']rural_population=data['乡村人口(万人)']6.4使用Python绘制图表>6.4.1折线图界面显示打开的“line.py”文件,在该文件中编写代码。参考代码如下。步骤4#创建画布,设置画布宽度为14英寸,高度为8英寸plt.figure(figsize=(14,8))#绘制乡村人口折线图,设置X轴数据(年份)、Y轴数据(乡村人口)、标签(乡村人口)、线条颜色(红色)、标记类型(上三角)plt.plot(years,rural_population,label='乡村人口',color='r',marker='^')#绘制城镇人口折线图,设置X轴数据(年份)、Y轴数据(城镇人口)、标签(城镇人口)、线条颜色(绿色)、标记类型(实心圆)plt.plot(years,urban_population,label='城镇人口',color='g',marker='o')6.4使用Python绘制图表>6.4.1折线图界面显示打开的“line.py”文件,在该文件中编写代码。参考代码如下。步骤4#设置图表标题的名称、字体颜色和字体大小plt.title('2003年至2023年全国城镇与乡村人口变化折线图',color='#008B8B',fontsize=16)#设置X轴和Y轴标题的名称、字体颜色和字体大小plt.xlabel('年份',color='#008B8B',fontsize=14)plt.ylabel('人口(万人)',color='#008B8B',fontsize=14)#设置网格线,在X轴和Y轴方向均显示网格线plt.grid(axis='both')6.4使用Python绘制图表>6.4.1折线图界面显示打开的“line.py”文件,在该文件中编写代码。参考代码如下。步骤4#设置城镇人口折线图的文本标签fori,yearinenumerate(years): #遍历年份

#获取当前年份的城镇人口

pop=urban_population[i] #设置当前年份城镇人口的文本标签,包括文本标签的X轴坐标(当前年份)、Y轴坐标(当前年份的城镇人口)、内容(当前年份的城镇人口)、字体大小(10点)、水平对齐方式(右对齐)、垂直对齐方式(底部对齐)

plt.text(year,pop,pop,fontsize=10,ha='right',va='bottom')6.4使用Python绘制图表>6.4.1折线图界面显示打开的“line.py”文件,在该文件中编写代码。参考代码如下。步骤4#设置图例,图例中每个数据系列对应的标签是从绘图函数plot()的label参数中获取的,图例的字体大小为12点plt.legend(fontsize=12)#设置字体为黑体,确保能够正确显示中文plt.rcParams['font.sans-serif']='SimHei'#显示图表plt.show()6.4使用Python绘制图表>6.4.1折线图右击代码,在弹出的快捷菜单中选择“运行‘line’”选项,在打开的图表窗口中展示“2003年至2023年全国城镇与乡村人口变化折线图”,效果如图所示。步骤5“2003年至2023年全国城镇与乡村人口变化折线图”效果【结果分析】2003年至2023年城镇人口一直处于上升趋势,乡村人口一直处于下降趋势。这些按钮有什么功能呢?6.4使用Python绘制图表>6.4.1折线图①按钮。单击该按钮可将图表重置为初始状态。②按钮。单击该按钮可执行返回操作,显示图表的上一个状态。③按钮。单击该按钮可撤销返回操作。④按钮。单击该按钮后,将鼠标指针移到图表区,按住鼠标左键并拖动可调整X轴和Y轴的数据,并移动图表的位置。⑤按钮。单击该按钮后,将鼠标指针移到图表区,按住鼠标左键并拖动,形成一个矩形区域后释放鼠标可放大图表中的部分数据区域。⑥按钮。单击该按钮,打开“Subplotconfigurationtool”窗口,在该窗口中可以对子图的布局和相关属性进行设置。⑦按钮。单击该按钮可将图表保存为图片。小提示6.4使用Python绘制图表>6.4.2面积图使用pyplot模块中的fill_between()函数可绘制面积图,该函数的语法格式如下。pyplot.fill_between(x,y1,y2=0,where=None,alpha=1,facecolor=None,edgecolor=None,linewidth=None,label=None)x:用于设置X轴的数据。y1:用于设置第1条曲线的Y轴数据。y2:用于设置第2条曲线的Y轴数据,默认值为0(表示第2条线为X轴)。where:用于设置填充区域的范围。alpha:用于设置填充区域的透明度。该参数的取值范围为0~1,数值越大,越不透明。facecolor:用于设置填充区域的填充颜色。edgecolor:用于设置填充区域的边框颜色。linewidth:用于设置填充区域的边框宽度。label:用于设置填充区域的标签。6.4使用Python绘制图表>

6.4.2面积图【例6-2】绘制面积图,展示2003年至2023年男性人口和女性人口数据。在“例题”目录中新建名为“area”的Python文件,并在该文件中编写代码。参考代码如下。步骤1importpandasaspdimportmatplotlib.pyplotaspltfile_path=r'D:\素材与实例\项目6\全国人口年度数据.xlsx'data=pd.read_excel(file_path)#提取年份和数据列(男性人口和女性人口)years=data['年份']male_population=data['男性人口(万人)']female_population=data['女性人口(万人)']#创建画布plt.figure(figsize=(10,8)) 6.4使用Python绘制图表>

6.4.2面积图在“例题”目录中新建名为“area”的Python文件,并在该文件中编写代码。参考代码如下。步骤1#绘制男性人口的面积图,设置X轴数据(年份),第1条曲线的Y轴数据(男性人口),填充区域的填充颜色、边框颜色、边框宽度和标签plt.fill_between(years,male_population,facecolor='#008B8B',edgecolor='black',linewidth=0.5,label='男性人口')#绘制女性人口的面积图,设置X轴数据(年份),第1条曲线的Y轴数据(女性人口),填充区域的填充颜色、透明度(0.5)、边框颜色、边框宽度和标签plt.fill_between(years,female_population,facecolor='#63B8FF',alpha=0.5,edgecolor='black',linewidth=0.5,label='女性人口') 6.4使用Python绘制图表>

6.4.2面积图在“例题”目录中新建名为“area”的Python文件,并在该文件中编写代码。参考代码如下。步骤1#设置图表标题的名称和字体大小plt.title('2003年至2023年全国男性与女性人口面积图',fontsize=16)#设置X轴和Y轴标题的名称和字体大小plt.xlabel('年份',fontsize=14)plt.ylabel('人口(万人)',fontsize=14)#设置坐标轴刻度,将X轴刻度标签逆时针旋转45度,防止刻度标签重叠plt.xticks(rotation=45)#设置图例的字体大小和位置(左上方)plt.legend(fontsize=12,loc='upperleft')6.4使用Python绘制图表>

6.4.2面积图#设置字体为黑体plt.rcParams['font.sans-serif']='SimHei'#应用ggplot样式plt.style.use('ggplot')#显示图表plt.show() 在“例题”目录中新建名为“area”的Python文件,并在该文件中编写代码。参考代码如下。步骤16.4使用Python绘制图表>

6.4.2面积图运行代码,在打开的图表窗口中展示“2003年至2023年全国男性与女性人口面积图”。步骤2“2003年至2023年全国男性与女性人口面积图”效果【结果分析】2003年至2023年全国男性人口均比女性人口多;2003年至2019年全国男性人口和女性人口均呈现上升趋势,2020年至2023年全国男性人口和女性人口均逐渐趋于平稳。6.4使用Python绘制图表>6.4.3柱形图使用pyplot模块中的bar()函数可绘制柱形图,该函数的语法格式如下。pyplot.bar(x,height,width=0.8,align='center',color=None,edgecolor=None,label=None)x:用于设置X轴的数据,通常是类别标签。height:用于设置柱形的高度(数据值大小)。width:用于设置柱形的宽度。align:用于设置柱形与X轴坐标的对齐方式。该参数的值为center(居中对齐)或edge(边缘对齐)等。6.4使用Python绘制图表>6.4.3柱形图在“例题”目录中新建名为“bar”的Python文件,并在该文件中编写代码。参考代码如下。步骤1【例6-3】绘制柱形图,展示2003年至2023年全国总人口数据。importpandasaspdimportmatplotlib.pyplotaspltfile_path=r'D:\素材与实例\项目6\全国人口年度数据.xlsx'data=pd.read_excel(file_path)#提取年份和年末总人口数据data_population=data[['年份','年末总人口(万人)']]plt.figure(figsize=(12,6)) #创建画布#绘制柱形图,设置X轴的数据(年份)、柱形的高度(年末总人口)plt.bar(data_population['年份'],data_population['年末总人口(万人)'])6.4使用Python绘制图表>6.4.3柱形图在“例题”目录中新建名为“bar”的Python文件,并在该文件中编写代码。参考代码如下。步骤1#设置图表标题的名称plt.title('2003年至2023年全国总人口柱形图') plt.xlabel('年份') #设置X轴标题的名称plt.ylabel('总人口(万人)') #设置Y轴标题的名称#设置X轴刻度标签逆时针旋转45度plt.xticks(rotation=45)#设置Y轴的数据范围,即最小值(80000)和最大值(145000)plt.ylim(80000,145000) plt.rcParams['font.sans-serif']='SimHei' plt.show()6.4使用Python绘制图表>6.4.2柱形图与条形图运行代码,在打开的图表窗口中展示“2003年至2023年全国总人口柱形图”。步骤2“2003年至2023年全国总人口柱形图”效果【结果分析】2003年的全国总人口最少;2003年至2018年全国总人口的上升趋势较为明显,2019年至2023年全国总人口变化幅度较小。6.4使用Python绘制图表>6.4.4条形图使用pyplot模块中的barh()函数可绘制条形图,该函数的语法格式如下。pyplot.barh(y,width,height=0.8,align='center',color=None,edgecolor=None)y:用于设置Y轴的数据,通常是类别标签。width:用于设置条形的宽度(数据值大小)。height:用于设置条形的高度。课堂互动在“例题”目录中新建名为“barh”的Python文件,并在该文件中编写代码,绘制“2003年至2023年全国总人口条形图”。6.4使用Python绘制图表>6.4.5饼图使用pyplot模块中的pie()函数可绘制饼图,该函数的语法格式如下。pyplot.pie(x,colors=None,labels=None,autopct=None,shadow=False,startangle=0,radius=1,pctdistance=0.6,textprops=None)x:用于设置每个扇形的数据。pie()函数会根据数据大小自动计算每个扇形的占比。colors:用于设置每个扇形的颜色。labels:用于设置每个扇形的标签。如果未设置该参数,pie()函数会自动使用数字作为每个扇形的标签。autopct:用于设置每个扇形百分比字符串的格式。

例如,“%1.1f%%”表示保留一位小数。6.4使用Python绘制图表>6.4.5饼图pyplot.pie(x,colors=None,labels=None,autopct=None,shadow=False,startangle=0,radius=1,pctdistance=0.6,textprops=None)shadow:用于设置饼图是否带有阴影效果。startangle:用于设置饼图的起始绘制角度。radius:用于设置饼图的半径。pctdistance:用于设置百分比字符串与圆心的距离。例如,该参数值为0.6时,表示百分比字符串与圆心的距离为饼图半径的60%。textprops:用于设置标签的字体和颜色等属性,该参数的值为字典。使用pyplot模块中的pie()函数可绘制饼图,该函数的语法格式如下。6.4使用Python绘制图表>

6.4.5饼图【例6-4】“男子体能测试成绩.xlsx”文件中的数据如图所示。绘制饼图,展示男子体能测试不同成绩等级的占比情况“男子体能测试成绩.xlsx”文件中的数据(部分)6.4使用Python绘制图表>

6.4.5饼图在“例题”目录中新建名为“pie”的Python文件,并在该文件中编写代码。参考代码如下。步骤1importpandasaspdimportmatplotlib.pyplotaspltfile_path=r'D:\素材与实例\项目6\男子体能测试成绩.xlsx'data=pd.read_excel(file_path)grades=data['成绩等级'] #提取成绩等级数据#统计每个成绩等级的学生数量,返回索引index(如及格)和值values(如262)grade_counts=grades.value_counts() plt.figure(figsize=(8,8)) #创建画布

6.4使用Python绘制图表>

6.4.5饼图在“例题”目录中新建名为“pie”的Python文件,并在该文件中编写代码。参考代码如下。步骤1#绘制饼图,设置每个扇形的数据(每个成绩等级的学生数量)、百分比字符串的格式(保留一位小数)、起始绘制角度(90度)、百分比字符串与圆心的距离(饼图半径的90%)、标签的字体大小和颜色plt.pie(grade_counts,autopct='%1.1f%%',startangle=90,pctdistance=0.9,textprops={'fontsize':13,'color':'w'})plt.title('男子体能测试成绩等级占比饼图',fontsize=20) #设置标题plt.rcParams['font.sans-serif']='SimHei'#设置图例,标签为grade_counts的索引(及格、良好、不及格、优秀)plt.legend(grade_counts.index)plt.show()6.4使用Python绘制图表>

6.4.5饼图运行代码,在打开的图表窗口中展示“男子体能测试成绩等级占比饼图”,效果如图。步骤2“男子体能测试成绩等级占比饼图”效果【结果分析】及格成绩等级学生的占比最多,优秀成绩等级学生的占比最少。6.4使用Python绘制图表>6.4.6散点图与气泡图使用pyplot模块中的scatter()函数可绘制散点图和气泡图,该函数的语法格式如下。pyplot.scatter(x,y,s=None,c=None,marker='o',cmap=None,alpha=None)x:用于设置X轴的数据。y:用于设置Y轴的数据。s:用于设置标记的大小。在气泡图中,该参数的值通常与某个变量(如成绩、销量等)相关。c:用于设置标记的填充颜色。cmap:用于设置颜色映射。该参数的值为viridis(多色渐变,默认值)、plasma(紫黄渐变)、inferno(黑黄渐变)、coolwarm(蓝红渐变)、RdBu(红蓝渐变)、gray(灰白渐变)、binary(白灰渐变)或hot(暖色调渐变)等。6.4使用Python绘制图表>6.4.6散点图与气泡图【例6-5】绘制散点图,展示男子体能测试1000米项目用时、50米项目用时、立定跳远测试结果、坐位体前屈测试结果与成绩的相关性。在“例题”目录中新建名为“scatter”的Python文件,并在该文件中编写代码。参考代码如下。步骤1importpandasaspdimportmatplotlib.pyplotaspltdata=pd.read_excel(r'D:\素材与实例\项目6\男子体能测试成绩.xlsx')6.4使用Python绘制图表>6.4.6散点图与气泡图在“例题”目录中新建名为“scatter”的Python文件,并在该文件中编写代码。参考代码如下。步骤1#创建画布和4个子图,子图分为两行、两列fig=plt.figure(figsize=(10,10))fig1=plt.subplot(2,2,1) #第1个子图,位于画布的第1行、第1列fig2=plt.subplot(2,2,2) #第2个子图,位于画布的第1行、第2列fig3=plt.subplot(2,2,3) #第3个子图,位于画布的第2行、第1列fig4=plt.subplot(2,2,4) #第4个子图,位于画布的第2行、第2列6.4使用Python绘制图表>6.4.6散点图与气泡图在“例题”目录中新建名为“scatter”的Python文件,并在该文件中编写代码。参考代码如下。步骤1#在第1个子图中绘制1000米项目用时与成绩的关系散点图fig1.scatter(data['1000米(分)'],data['成绩'],color='b',alpha=0.6) #X轴和Y轴数据分别为1000米项目用时和成绩,标记的透明度为0.6#设置子图的标题名称fig1.set_title('1000米项目用时与成绩的关系散点图')#设置子图的X轴标题名称fig1.set_xlabel('1000米项目用时(分)') #设置子图的Y轴标题名称fig1.set_ylabel('成绩') 6.4使用Python绘制图表>6.4.6散点图与气泡图在“例题”目录中新建名为“scatter”的Python文件,并在该文件中编写代码。参考代码如下。步骤1#在第2个子图中绘制50米项目用时与成绩的关系散点图fig2.scatter(data['50米(秒)'],data['成绩'],color='g',alpha=0.6)fig2.set_title('50米项目用时与成绩的关系散点图')fig2.set_xlabel('50米项目用时(秒)')fig2.set_ylabel('成绩')#在第3个子图中绘制立定跳远测试结果与成绩的关系散点图fig3.scatter(data['立定跳远(厘米)'],data['成绩'],color='r',alpha=0.6)fig3.set_title('立定跳远测试结果与成绩的关系散点图')fig3.set_xlabel('立定跳远测试结果(厘米)')fig3.set_ylabel('成绩') 6.4使用Python绘制图表>6.4.6散点图与气泡图在“例题”目录中新建名为“scatter”的Python文件,并在该文件中编写代码。参考代码如下。步骤1#在第4个子图中绘制坐位体前屈测试结果与成绩的关系散点图fig4.scatter(data['坐位体前屈(厘米)'],data['成绩'],color='y',alpha=0.6)fig4.set_title('坐位体前屈测试结果与成绩的关系散点图')fig4.set_xlabel('坐位体前屈测试结果(厘米)')fig4.set_ylabel('成绩')#调整上、下子图和左、右子图的间距plt.subplots_adjust(hspace=0.3,wspace=0.2)plt.rcParams['font.sans-serif']='SimHei'plt.show() 6.4使用Python绘制图表>6.4.6散点图与气泡图运行代码,在打开的图表窗口中展示不同测试项结果与成绩关系散点图,效果如图。步骤2不同测试项结果与成绩关系散点图效果【结果分析】1000米项目用时、50米项目用时与成绩成反比,即用时越多,成绩越低;立定跳远、坐位体前屈的测试结果与成绩成正比,即测试项对应的数值越大,成绩越高。6.4使用Python绘制图表>6.4.7直方图使用pyplot模块中的hist()函数可绘制直方图,该函数的语法格式如下。pyplot.hist(x,bins=10,range=None,color=None,edgecolor)x:表示输入的数据(用于生成直方图的数据)。bins:用于设置直方图的箱数或区间边界。该参数可以是一个整数,表示箱数,即将数据分成等宽的bins个区间;也可以是一个序列,用于定义区间边界,除了最后一个区间,其余所有区间都是左闭右开的。range:用于设置直方图的数据范围,超出此范围的数据不会出现在直方图中。如果未设置该参数,hist()函数会将输入数据的最小值和最大值作为直方图的数据范围。6.4使用Python绘制图表>6.4.7直方图【例6-6】绘制直方图,展示男子体能测试1000米项目用时分布情况。在“例题”目录中新建名为“hist”的Python文件,并在该文件中编写代码。参考代码如下。步骤1importpandasaspdimportmatplotlib.pyplotaspltimportnumpyasnpfile_path=r'D:\素材与实例\项目6\男子体能测试成绩.xlsx'data=pd.read_excel(file_path)#获取1000米项目用时的最小值和最大值,并取整数min_value=np.floor(data['1000米(分)'].min()) #向下取整,结果为3.0max_value=np.ceil(data['1000米(分)'].max()) #向上取整,结果为6.06.4使用Python绘制图表>6.4.7直方图在“例题”目录中新建名为“hist”的Python文件,并在该文件中编写代码。参考代码如下。步骤1#设置直方图的区间边界,每个区间间隔为0.2,即[3.03.23.43.63.8……]bin_edges=np.arange(min_value,max_value+0.2,0.2)plt.figure(figsize=(8,6))#绘制直方图,设置输入的数据(1000米项目用时)、区间边界,直方图颜色、边框颜色plt.hist(data['1000米(分)'],bins=bin_edges,color='#008B8B',edgecolor='black')plt.title('男子1000米项目用时分布直方图',fontsize=16)plt.xlabel('1000米项目用时(分)',fontsize=14)plt.ylabel('频数',fontsize=14)6.4使用Python绘制图表>6.4.7直方图在“例题”目录中新建名为“hist”的Python文件,并在该文件中编写代码。参考代码如下。步骤1#设置X轴刻度的位置,即[3.03.23.43.63.8……]plt.xticks(ticks=bin_edges)plt.rcParams['font.sans-serif']='SimHei'plt.style.use('bmh')plt.show()6.4使用Python绘制图表>6.4.7直方图运行代码,在打开的图表窗口中展示“男子1000米项目用时分布直方图”,效果如图。步骤2“男子1000米项目用时分布直方图”效果【结果分析】1000米项目用时集中在3.6分钟至4.6分钟;用时低于3.6分钟和高于4.6分钟的学生人数较少。6.4使用Python绘制图表>6.4.8箱形图使用pyplot模块中的boxplot()函数可绘制箱形图,该函数的语法格式如下。pyplot.boxplot(x,tick_labels,vert=True,sym=None,positions=None,widths=0.5)x:表示输入的数据。如果该数据是二维数组,则x中的每列数据生成一个箱形图;如果该数据是多个一维数组组成的序列,则x中的每个数组生成一个箱形图。tick_labels:用于设置每个箱形图的刻度标签,通常是每个箱形图的类别标签。vert:用于设置是否垂直显示箱形图。sym:用于设置异常值的标记类型。positions:用于设置每个箱形图在坐标轴上的位置。widths:用于设置箱形图的宽度,单位默认为点。课堂互动在“例题”目录中新建名为“boxplot”的Python文件,并在该文件中编写代码,绘制“男子1000米项目用时箱形图”。6.4使用Python绘制图表>6.4.9词云图在Python中,使用WordCloud库可以根据文本数据生成词云图,使用matplotlib库可以将生成的词云图显示出来。生成词云图的语法格式如下。WordCloud(width,height,background_color='white',max

温馨提示

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

评论

0/150

提交评论