版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
01020304第11章Matplotlib库应用基础11.1Matplotlib核心概念11.2绘图基础11.3Pyplot函数使用基础11.4定制图形的外观与样式0511.5多图形绘制0611.6综合应用案例第11章Matplotlib库应用基础11.1.1数据可视化的意义11.1Matplotlib核心概念所谓数据可视化就是通过图形化手段将复杂数据转化为直观信息。它的主要意义体现在以下四个方面:一,它能显著提升决策效率,利用人眼对视觉符号的高效处理能力,帮助用户快速捕捉关键趋势和异常点。二,通过维度划分和指标映射,可视化技术能有效揭示数据间的内在关联,辅助理解复杂数据结构。三,在实践应用中,可视化系统能提供实时数据反馈和个性化建议,促进企业科学化决策与业务流程优化。四,交互式可视化工具支持多维度数据探索,同时通过标准化的图表的呈现大幅降低对专业数据的理解门槛,增强跨领域沟通效率。1.数据可视化的意义图11.1正弦函数数据采样[0,2л]【示例1】正弦函数采样数据对比展示。通过两种形式展示正弦函数的采样数据:表11.1以数值形式列出10个采样点的具体数据,而图11.1则以连续曲线形式呈现一个完整周期内的数据分布。第11章Matplotlib库应用基础11.1.2Matplotlib在python生态中的定位11.1.2Matplotlib在python生态中的定位
Matplotlib是Python生态中最为核心的数据可视化工具,在科学计算领域扮演着至关重要的角色。作为连接数据处理与图形展示的关键桥梁,它能够高效地将NumPy数组、Pandas数据框等科学计算数据转换为各类精美的统计图表。在Python的科学计算生态链中,matplotlib处于承上启下的核心位置。向上直接对接NumPy和Pandas等数据处理工具,向下支撑Seaborn等高级可视化库。其设计理念虽然借鉴了MATLAB的图形系统,但在功能丰富性和输出质量上都实现了显著提升。
Matplotlib的强大之处在于其灵活的多层次架构设计:既提供了简单易用的高级绘图接口,也保留了底层绘图原语,支持从快速原型开发到出版级图表定制的全流程需求。无论是交互式环境中的动态探索,还是学术论文中的高质量图表输出,matplotlib都能完美胜任。通过与Jupyter等工具的深度集成,它已成为数据科学家和研究人员不可或缺的标准可视化工具,为从基础研究到工业应用的各个领域提供了坚实的数据可视化支持。第11章Matplotlib库应用基础11.1.3核心架构解析11.1.3核心架构解析
Matplotlib采用分层的面向对象架构设计,包括后端层(Backend)、容器层(Figure/Axes)和元素层(Artist)。1.后端层后端层作为绘图基础设施,用户无需直接操作。后端层负责处理图形的实际绘制和显示,它将Matplotlib的图形对象转换为具体的图像格式或显示在特定的界面上。Matplotlib提供了交互后端和非交互后端两类后端。交互后端交互后端用于创建交互式图形界面,允许用户与图形进行交互,如缩放、平移等操作。常见的交互后端有
TkAgg(默认值,基于Tkinter)、QtAgg(基于PyQt)、GTKAgg(基于GTK)。(2)非交互后端:用于生成静态图像文件,如PNG、JPEG、PDF等。常见的非交互后端有
Agg(生成PNG图像)、PDF(生成PDF文件)、SVG(生成SVG文件)。第11章Matplotlib库应用基础11.1.3核心架构解析11.1.3核心架构解析查看当前使用的后端的代码为:importmatplotlibprint(matplotlib.get_backend())可以使用
matplotlib库中的use函数指定使用的后端。语法格式:matplotlib.use(backend,force)参数说明:
backend:指定要使用的后端名称。交互后端主要有:'TkAgg'(基于Python标准GUI库Tkinter库实现)、'QtAgg'(基于PyQt库实现)、'GTKAgg'(基于GTK库实现)。非交互后端主要有:'Agg'(用于生成PNG格式的图像文件)、'PDF'(用于生成PDF格式的文件)、'SVG'(生成SVG格式的文件)。
force:默认值为
True。当设置为
True
时,如果已经有图形被创建,会强制切换后端;如果设置为
False,当已经有图形被创建时,不会切换后端。第11章Matplotlib库应用基础11.1.3核心架构解析11.1.3核心架构解析【练一练11.1】指定使用Agg后端生成静态图像。使用Agg后端生成静态图像的Python源代码如下所示。importmatplotlibmatplotlib.use('agg')importmatplotlib.pyplotaspltplt.plot([1,2,3,4])plt.ylabel('somenumbers')plt.savefig('aggpic.png')静态图像不能够直接显示只能保存为图片。11.2Agg后端生成的静态图像第11章Matplotlib库应用基础11.1.3核心架构解析11.1.3核心架构解析2.容器层该层管理图形组织和坐标系,扮演着舞台总监的角色,规划"在哪画"的空间布局。Figure作为基础容器层,建立在Canvas之上,类似于放置在画板上的画布,用户可通过plt.figure()进行实例化,进而可以设置画布尺寸、背景色及分辨率等属性。在Figure之上是Axes层,可包含多个Axes对象。Axes层是实际数据可视化区域,作为具体的绘图区域,包含坐标系、坐标轴及所有图形元素。每个Figure可包含多个Axes子图,它们共享画布空间但保持独立的坐标系统,通过fig.add_subplot()或plt.subplots()方法建立这种层级关系,多子图示意见图11.3。11.3多子图示示意第11章Matplotlib库应用基础11.1.3核心架构解析11.1.3核心架构解析3.元素层(Artist)元素层(Artist层)是Matplotlib可视化系统的核心组件,包含所有可视化元素的基类(Artist),负责控制图形细节的呈现。该层包含Line2D(线条)、Text(文本)、Patch(几何图形)等具体类,每个Artist对象通过属性(如颜色、线宽、字体等)定义其可视化特征。如图11.4所示,图中每个蓝色圆圈代表一种Artist对象,包括Line2D.Text、Patch等,它们通过各自的属性(如线型、字体、填充样式)实现数据可视化图11.4图形元素第11章Matplotlib库应用基础11.2.1图形绘制方法11.2绘图基础Pyplot接口快速绘图和面向对象接口绘图结果对比Matplotlib提供了两种主要的编程接口用于图形绘制:pyplot接口和面向对象接口(OO接口)。1.pyplot接口(函数式)pyplot是Matplotlib提供的一个基于状态的接口,模仿MATLAB的绘图风格,快速生成简单图形。2.面向对象接口用户通过面向对象接口对图形绘制进行更精细的控制,实现复杂可视化。其特点为:(1)显式创建Figure和Axes,完全控制图形结构;(2)支持多子图、复杂布局(GridSpeC.subplot2grid);(3)代码可复用性高。非常适合绘制复杂图形(多子图、组合图表)、需要精细调整的科研论文图表及长期维护的代码。
图11.5两种绘图接口可视化结果对比第11章Matplotlib库应用基础11.2.2绘制图形的基本步骤
11.2绘图基础用Matplotlib绘制图形需要经过5个基本步骤:1.准备绘制图形的数据数据可以是列表、数组等形式。绘制图形的数据来源主要有:(1)创建列表或数组。直接在代码中创建Python列表,或者使用NumPy数组来作为绘图的数据。这种方式适合用于简单的示例、测试或演示。(2)从文件中读取数据。在实际应用中数据通常存储在文件中,如CSV文件、文本文件等。可以使用
pandas
库来读取这些文件,并将数据转换为适合绘图的格式。(3)数据库查询结果。如果数据存储在数据库中,可以使用相应的数据库连接库(如
sqlite3、pymysql
等)从数据库中查询数据,并将结果用于绘图。(4)实时生成的数据。在某些场景下数据是实时生成的,例如传感器数据、模拟实验数据等。可以使用循环或者实时数据流来获取这些数据并进行绘图。(5)API接口获取的数据。许多网站和服务提供了API接口,可以通过发送HTTP请求来获取数据。第11章Matplotlib库应用基础11.2.2绘制图形的基本步骤
11.2绘图基础用Matplotlib绘制图形需要经过5个基本步骤:2.创建图形窗口和绘图区域(1)创建图形窗口图形窗口(Figure)是所有绘图元素的顶层容器,类似于一张画布。(2)创建绘图区域绘图区域(Axes)是实际绘制数据的区域,它位于图形窗口(Figure)内部。3.绘制图形Matplotlib提供了多种基础图形绘制方法,在实际应用中需要根据数据类型和分析目的选择合适的图表类型。4.设置图形属性
在数据可视化过程中,图形属性的设置应当遵循"必要则设"的原则,避免过度修饰而影响数据表达。5.显示或保存图形在数据可视化过程中,图形显示与保存的设置同样需要遵循"必要则设"的原则。所有这些设置都应当以实际应用需求为导向,在保证图形质量的前提下,选择最合适的显示和保存方式。第11章Matplotlib库应用基础11.3.1绘制散点图11.3Pyplot函数使用基础散点图将数据以点的形式绘制在二维平面上,能直观地呈现出数据在两个变量维度上的分布情况。通过观察点的密集程度、分布范围和形状,可以快速了解数据的集中趋势、离散程度以及可能存在的异常值。利用pyplot模块中的scatter函数,可以绘制散点图。基本语法格式:scatter(x,y,s,c,**kwargs)参数说明:
x
和
y:分别表示数据点的x坐标和y坐标。需为可迭代对象,且两者的长度必须相同。
s:指定散点的大小。可以是单个数值,表示所有散点的大小;也可以是与
x、y
长度相同的数组,为每个散点指定不同的大小。默认值为
None,使用默认的散点大小。
c或color:指定散点的颜色。可以是单个颜色值,也可以是与
x、y
长度相同的数组,为每个散点指定不同的颜色。
**kwargss:关键字参数。常用的有:(1)marker:指定散点的标记样式。常见的标记样式有
'o'(默认值,圆形)、's'(空心正方形)、'^'(上三角形)。(2)label
:为散点图中的数据系列添加标签,这个标签通常会在图例中显示。当绘制多个数据系列的散点图时,使用
label
参数可以清晰地区分不同的数据系列。
第11章Matplotlib库应用基础11.3.1绘制散点图11.3Pyplot函数使用基础
【例11.2】绘制(1,2)、(2,3)、(3,5)、(4,7)、(5,11)五个点的散点图。代码如下所示importmatplotlib.pyplotaspltx=[1,2,3,4,5] #5个点的横坐标y=[2,3,5,7,11] #5个点的纵坐标plt.scatter(x,y,c='red',s=30) #绘制散点图plt.show() #显示绘制的图形【练一练11.2】上例中添加语句“plt.scatter(y,x,c='green',s=30)”,观察输出效果。图11.6例11.2的散点图可视化结果第11章Matplotlib库应用基础11.3.2绘制柱状图11.3Pyplot函数使用基础
当需要比较不同类别的数值大小时,柱状图是最佳选择,它通过柱体高度的差异可以直观地进行类别对比。使用bar函数可以绘制柱状图。语法格式:bar(x,height,width,bottom,align,data,**kwargs)参数说明:
x:柱子的位置。可以是数值序列,如列表、数组等,用于指定柱子的x轴上的位置。
height:柱子高度,即每个柱子所代表的数据值。可以长度与
x
一致的数值序列。
width:柱子宽度,默认值为0.8。可以是单个数值,表示所有柱子的统一宽度;也可以是与
x
长度相同的数组,为每个柱子指定不同的宽度。
bottom:柱子底部位置,默认值为
None,即柱子从x轴开始绘制。如果传入一个数值序列,每个柱子会从对应的
bottom
值开始绘制。
align:柱子的对齐方式,可取值
'center'(默认值,柱子中心对齐到
x
位置)或
'edge'(柱子左边缘对齐到
x
位置)。
data:具有索引接口的对象(如字典、pandas
的
DataFrame),用于指定数据来源。如果提供了
data,可以使用字符串来引用
data
中的列作为
x、height
等参数的值。
**kwargs:其他关键字参数,用于设置柱子的外观属性,如
color(颜色)、edgecolor(边框颜色)、linewidth(边框宽度)、label(用于图例的标签)、alpha(透明度,[0,1]上的数值)等。第11章Matplotlib库应用基础11.3.2绘制柱状图11.3Pyplot函数使用基础
【例11.3】绘制某学校学生对四项课外体育活动选择人数的对比柱状图importmatplotlib.pyplotaspltplt.rcParams['font.sans-serif']='SimHei'#设置中文显示names=['足球','蓝球','排球','乒乓球'] #运动项目名称values=[10,20,15,25] #运动项目的选择人数colors=['blue','yellow','green','purple'] #每个柱子的颜色plt.bar(names,values,color=colors) #创建柱状图plt.show() #显示图表。图11.7柱状图第11章Matplotlib库应用基础11.3.3绘制箱线图11.3Pyplot函数使用基础
箱线图用于展示数据的分布特征,如中位数、四分位数、异常值等。箱线图主要包括以下几个组成部分:箱体:箱体的上下边界分别是上四分位数(Q3)和下四分位数(Q1),箱体中间的线是中位数(Q2)。须线:须线从箱体延伸出去,通常表示数据的正常范围。须线的端点一般是距离箱体不超过1.5倍四分位距(IQR)(IQR=Q3(上四分位数)-Q1(下四分位数))的最远数据点。异常值:超出须线范围的数据点被视为异常值,通常用特殊的标记表示。通过箱线图,可以快速了解数据的分布情况,比较不同数据集之间的差异,发现数据中的异常值等。可使用boxplot函数绘制箱线图。语法格式:boxplot(x,**kwargs)参数说明:
x:可以是数组、列表或嵌套列表,代表要绘制箱线图的数据。如果是嵌套列表,每个子列表会被视为一个独立的数据集,绘制一个对应的箱线图。
**kwargs:关键字参数,常用的有:(1)notch:默认值为
False。如果设置为
True,会绘制带有缺口的箱线图,缺口部分表示中位数的置信区间。(2)labels:列表,用于为每个箱线图添加标签,标签会显示在x轴(垂直箱线图)或y轴(水平箱线图)上。(3)widths:指定每个箱线图的宽度。可以传入一个标量值,此时所有箱线图将具有相同的宽度;也可以传入一个数组,为每个箱线图指定不同的宽度。第11章Matplotlib库应用基础11.3.3绘制线箱图11.3Pyplot函数使用基础
图11.8箱线图(4)sym:指定异常值的标记样式,默认值为
'b+',表示蓝色的加号。可使用其他标记样式,如
'ro'
表示红色的圆形。(5)vert:默认值为True。绘制垂直方向的箱线图;如为
False,绘制水平方向的箱线图。(6)whis:可以是浮点数或序列,默认值为1.5。用于确定异常值的范围,通常是四分位距(IQR)的倍数。【例11.4】绘制简单箱线图代码如下importmatplotlib.pyplotasplt,numpyasnpdata=[np.random.normal(0,std,100)forstdinrange(1,4)]plt.boxplot(data)plt.show()第11章Matplotlib库应用基础11.3.4绘制误差棒图11.3Pyplot函数使用基础
误差棒图是一种用于展示数据的均值和误差范围的图表,它能直观地反映数据的不确定性。可以使用
errorbar函数绘制误差棒图。语法格式:errorbar(x,y,yerr,xerr,fmt,**kwargs)参数说明:
x、y:数组类型,代表数据点的x、y坐标。
yerr:数组类型或者标量值,指定y方向的误差范围。可以是一个与
y
长度相同的数组,为每个数据点指定不同的误差值;也可以是一个标量值,所有数据点的误差值相同。如果只提供一个单边误差范围,可以传入一个形状为
(2,N)
的数组,其中第一行表示负误差,第二行表示正误差。
xerr:与
yerr
类似,指定x方向的误差范围。
fmt:字符串类型,指定数据点和连接线的格式,类似于plot
中的格式字符串。例如,'o'
表示仅绘制数据点为圆形,'-o'
表示绘制带连接线的圆形数据点。
ecolor:字符串类型,指定误差棒的颜色。
elinewidth:浮点数类型,用于指定误差棒的线宽。
capsize:浮点数类型,指定误差棒末端横线(即误差棒帽)的长度。
capthick:浮点数类型,指定误差棒帽的线宽。
barsabove:默认值为
False。如果设置为
True,误差棒将绘制在数据点和连接线上方。
errorevery:整数或元组类型,指定每隔多少个数据点绘制一个误差棒。第11章Matplotlib库应用基础11.3.4绘制误差棒图11.3Pyplot函数使用基础
图11.9误差棒图【例11.5】绘制误差棒图importmatplotlib.pyplotasplt,numpyasnpx=np.linspace(0,10,5);y=np.sin(x)yerr=np.random.rand(5)plt.errorbar(x,y,yerr=yerr,fmt='o',color='blue',ecolor='red',elinewidth=2,capsize=5)plt.show()第11章Matplotlib库应用基础11.4.1全局配置参数11.4定制图形的外观与样式在matplotlib库中,rcParams是一个字典类型的变量,用于存储和管理
matplotlib
的全局配置参数。涵盖图形的大小、线条的样式、字体的选择、颜色的搭配等众多方面。可以通过修改
rcParams
中的键值对来改变默认的绘图设置,这些设置会影响后续创建的所有图形。
rcParams常用的可配置参数有:
'figure.dpi':设置或返回当前图形的分辨率,即每英寸的点数。
figure.figsize:设置图形大小(单位:英寸),格式为
(width,height)。
font.family:设置默认的字体,如'SimHei'(黑体)、'SimSun'(宋体)等。
font.size:设置默认的字体大小。
lines.linewidth:设置线条的默认宽度。
lines.linestyle:设置线条的默认样式,如
'-'(实线)、'--'(虚线)等。
axes.facecolor:设置绘图区域的背景颜色。
figure.facecolor:设置图形窗口的背景颜色。第11章Matplotlib库应用基础11.4.2设置图形的标题与图例11.4定制图形的外观与样式2.设置图例图例(Legend)是图表中用于解释不同数据系列或图形元素的标识。在绘制图形时,可以通过label参数为数据系列添加标签,然后使用pyplot.legend函数显示图例。语法格式:legend(*args,**kwargs)返回值:一个Legend对象。可通过该对象对图例进行进一步的操作。常用参数有:(1)labels:一个字符串列表,为每个绘图元素指定对应的标签。如果在绘图时已经通过
label
参数为绘图元素指定了标签,这里可以省略该参数。
loc:指定图例位置。常见取值有'best'、
'upperright'、'upperleft'、'lowerleft'、'lowerright'、'right'、'centerleft'、'centerright'、'lowercenter'、'uppercenter'、'center'。其中best为自动寻找最佳位置。
title:图例标题。
ncol:指定图例中标签的列数。默认值为1,表示图例中的标签按一列排列。
frameon:控制是否显示图例的边框。True
表示显示边框,False
表示不显示边框。第11章Matplotlib库应用基础11.4.3设置坐标轴的标签、范围、刻度11.4定制图形的外观与样式1.设置坐标轴标签(1)设置x轴的标签matplotlib.pyplot
模块中的xlabel函数,用于为当前图形的x轴添加标签。语法格式:xlabel(xlabel,fontdict,labelpade,loc,**kwargs)返回值:是一个
matplotlib.text.Text
对象,代表所设置的x轴标签,可以利用该对象对标签的属性进行进一步的操作和修改。参数说明:
xlabel:指定x轴标签的文本内容。这个字符串会显示在x轴下方。
fontdict:字典,设置x轴标签的字体属性。字典中常见的键有
'fontsize'(字体大小)、'color'(字体颜色)、'fontweight'(字体粗细)、'fontstyle'(字体样式,如
'italic'
表示斜体)等。
labelpad:设置x轴标签与x轴之间的间距,单位是点(points)。
loc:指定x轴标签的水平位置。可取值为
'left'(左对齐)、'center'(默认值,居中对齐)、'right'(右对齐)。
**kwargs:关键字参数。常用的有
alpha(透明度,取值范围0到1)、rotation(标签旋转角度,单位为度)等。第11章Matplotlib库应用基础11.4.3设置坐标轴的标签、范围、刻度11.4定制图形的外观与样式(2)设置y轴的标签matplotlib.pyplot
模块中的ylabel函数,用于为当前图形的y轴添加标签。该函数的返回值为
matplotlib.text.Text
对象,可以利用该对象对标签的属性进行进一步的操作和修改。该函数的参数与xlabel函数的参数相同,作用也类似。只是loc参数用于指定y轴标签的垂直位置。可取值为
'bottom'、'center'(默认值)、'top',分别表示标签位于y轴底部、中部和顶部。2.设置X轴和Y轴的范围可以通过pyplot模块的xlim函数和ylim函数设置X轴和Y轴的范围。xlim函数语法格式:xlim(left,right)返回值:一个包含x轴取值范围的元组(left,right)。参数说明:设置x轴的范围,left是左边界,right是右边界。ylim函数函数语法格式:ylim(bottom,top)返回值:一个包含y轴取值范围的元组(bottom,top)。参数说明:设置y轴的范围,bottom是下边界,top是上边界。第11章Matplotlib库应用基础11.4.3设置坐标轴的标签、范围、刻度11.4定制图形的外观与样式3.设置X轴和Y轴的刻度在Matplotlib中,可以通过多种方式设置坐标轴的刻度(ticks),包括主刻度、次刻度、刻度标签。可利用pyplot模块的xticks和yticks函数设置X轴和Y轴的刻度。xticks函数语法格式:xticks(ticks,labels,minor,**kwargs)返回值:包含刻度位置和标签的元组(locs,labels)。参数说明:
ticks:指定x轴上刻度的位置。例如
ticks=[1,2,3]。
labels:为
ticks
中指定的刻度位置设置对应的标签。例如labels=['A','B','C']。
minor:指定这些刻度是主刻度还是次刻度。默认值为
False,表示设置的是主刻度。
**kwargs:设置刻度标签的其他属性,常见的关键字参数有rotation(指定刻度标签的旋转角度,单位为度)、fontsize(设置刻度标签的字体大小)、color(设置刻度标签的字体颜色)。第11章Matplotlib库应用基础11.4.3设置坐标轴的标签、范围、刻度11.4定制图形的外观与样式【例11.7】设置x轴的主刻度和次刻度importmatplotlib.pyplotaspltimportnumpyasnpx=np.linspace(0,10,100);y=np.sin(x)plt.plot(x,y)ticks=[0,2,4,6,8,10]labels=['Zero','Two','Four','Six','Eight','Ten']plt.xticks(ticks,labels,rotation=45,fontsize=12)#设置主刻度ticks=[1,3,5,7,9]plt.xticks(ticks,minor=True)#设置次刻度plt.show()该段代码的执行结果见图11.11。图11.11刻度的使用效果第11章Matplotlib库应用基础11.4.4添加网格、背景与注释11.4定制图形的外观与样式1.设置网格网格(grid)是坐标轴上的辅助线,可以更直观地理解数据的位置和分布。利用pyplot模块的grid函数可以绘制网格。语法格式:grid(visible,which,axis,**kwargs)返回值:None。参数说明:visible设置是否显示网格线;which可取值'major'(仅设置主刻度对应的网格线)、'minor'(仅设置次刻度对应的网格线)和'both'(同时设置主刻度和次刻度对应的网格线),默认为'major';axis设置显示哪个方向的网格线,可以是'both'(默认),'x'或'y'。**kwargs设置网格样式,常用参数有color、linestyle、linewidth,分别表示网格线的颜色,样式和宽度。2设置背景可利用pyplot.rcParams字典设置整个图形界面或绘图区域的背景颜色。例如,设置整个图形界面的背景颜色:plt.rcParams['figure.facecolor']='white'设置绘图区域的背景颜色:plt.rcParams['axes.facecolor']='lightyellow'第11章Matplotlib库应用基础11.4.4添加网格、背景与注释11.4定制图形的外观与样式在Python中使用Matplotlib库进行绘图时,注释(注释或标签)是一个非常重要的功能,用于在图上添加文本信息,以增强图表的可读性和解释性。利用pyplot模块的text函数可以在图表中的指定位置添加文本注释。语法格式:text(x,y,s,fontdict,**kwargs)返回值:Text对象。参数说明:
x、y:文本注释的坐标位置。
s:是要显示的文本内容。
fontdict:设置文本的字体属性。字典中的常用键有'fontsize'(字体大小)、'color'(字体颜色)等)。
**kwargs:其他可选参数,常用的有ha(文本的水平对齐方式,可选值有
'left'、'center'、'right')、va(文本的垂直对齐方式,可选值有
'bottom'、'center'、'top')、rotation(文本的旋转角度,单位为度)、alpha(文本的透明度)。第11章Matplotlib库应用基础11.5.1一个绘图区域实现多图形绘制11.5多图形绘制在Matplotlib中,可以在一个图形界面上绘制多个图形。既可以在整个图形界面上只创建一个绘图区域,在这个区域绘制多个图形。也可以将图形界面划分为多个绘图区域,在每个绘图区域绘制图形。在一个绘图区域绘制多个图形,可以更全面地展示数据,更直观地进行对比分析,其步骤描述如下:1.数据准备确定数据类型和数量。明确要绘制的每个图形所对应的数据,这些数据可以是一维数组、二维数组等不同类型。2.绘图环境初始化如果整个图形界面只需要一个绘图区域,可以直接调用绘图函数绘制多个图形,由系统自动创建Figure对象(图形界面)和Axes对象(绘图区域)。3.绘制图形并设置图形属性选择绘图区域,调用绘图函数绘制图形。可以通过设置不同的颜色、线型或标记,区分不同的图形元素。4.处理重叠和布局问题当绘制多个图形时,可能会出现图形重叠的情况,影响可视化效果。可以通过调整图形的位置、大小、透明度等方式来避免重叠。第11章Matplotlib库应用基础11.5.1一个绘图区域实现多图形绘制11.5多图形绘制【例11.8】在同一个绘图区域绘制y=sinx、y=cosx的图形。importmatplotlib.pyplotaspltimportnumpyasnpx=np.linspace(0,2*np.pi,100) #横坐标y1=np.sin(x) #x对应的正弦值y2=np.cos(x) #x对应的余弦值plt.plot(x,y1,color='blue',label='sin(x)')#绘制y=sinx图像plt.plot(x,y2,color='red',label='cos(x)')#绘制y=cosx图像plt.legend() #显示图例plt.title('y=sin(x),y=cos(x)') #设置标题plt.grid(True) #显示主刻度网格线plt.show()该段代码的执行结果见图11.12。图11.12同一区域多图形绘制效果第11章Matplotlib库应用基础11.5.2在多个绘图区域分别绘制图形11.5多图形绘制1.规则子图布局利用pyplot模块的subplot函数默认创建的子图
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- TLS加密优化实验方案课程设计
- 机动车鉴定评估师岗前理论实操考核试卷含答案
- LoRa数据传输课程设计指南课程设计
- 医用高能射线装备组装调试工岗前技术管理考核试卷含答案
- 公司环保安全责任保证承诺书(4篇)
- 抽纱刺绣工成果评优考核试卷含答案
- 酒精发酵工安全行为水平考核试卷含答案
- 矿井开掘工创新意识模拟考核试卷含答案
- 绿化项目执行承诺书3篇
- 网络安全工程师风险分析与防御指导书
- T/DZJN 36-2021退役动力电池拆解无害化破碎分选技术规范
- 设备开机关机培训
- 企业员工培训与发展制度
- DBJ50-T-157-2022房屋建筑和市政基础设施工程施工现场从业人员配备标准
- 同理心在护理临床的应用
- UL2703标准中文版-2019平板光伏模块和面板使用的安装系统安装设备夹紧固定设备和接地片
- 教师跟岗二次培训
- 2022年中华护理学会输液连接装置安全管理专家共识解读
- 地方病防治技能理论考核试题
- 基于三菱PLC的工业洗衣机控制
- 第19课+资本主义国家的新变化+说课稿 高一下学期统编版(2019)必修中外历史纲要下
评论
0/150
提交评论