当前位置: 首页 > news >正文

陕西新站seo网站一键搭建

陕西新站seo,网站一键搭建,小程序制作免费,一体化企业管理软件文章目录 一、简介二、一些基本概念2.1 图表元素2.2 常见图表类型2.3 主要绘图函数及其返回值2.4 Artists 的概念 三、基本图表详解3.1 成对数据3.11 折线图#xff1a;plot()#x1f7e8;设置图表样式#x1f7e8;设置各种标签#x1f7e8;设置坐标轴#x1f7e8;绘制子图… 文章目录 一、简介二、一些基本概念2.1 图表元素2.2 常见图表类型2.3 主要绘图函数及其返回值2.4 Artists 的概念 三、基本图表详解3.1 成对数据3.11 折线图plot()设置图表样式设置各种标签设置坐标轴绘制子图显示网格线保存为图片 3.12 散点图scatter()3.13 条形图bar() 3.2 统计3.21 直方图3.22 箱线图3.23 饼图3.24 误差线 3.3 网格3.4 不规则网格3.5 3D和体积数据 一、简介 Matplotlib 是一个用于创建静态、动态和交互式图表的 Python 绘图库。它提供了大量的图表类型和工具适用于数据分析和可视化。 Matplotlib是Python语言及其数值计算库NumPy的绘图库。它提供了一个面向对象的API可以将绘图嵌入到使用通用GUI工具包如Tkinter、wxPython、Qt或GTK的程序中。它还有一个基于状态机就像OpenGL的过程式编程“pylab”接口其设计与MATLAB非常类似。 Matplotlib文档https://matplotlib.org/stable/index.html 核心特性 丰富的图表类型 线图、散点图、条形图、饼图、直方图等。高级图表如等高线图、3D 图表、热力图等。 高度自定义 图形的各种属性如颜色、线型、标记、标签等可以自定义。可以添加标题、标签、图例、网格等。 兼容性强 支持多种输出格式包括 PNG、PDF、SVG、EPS 等。与 NumPy 和 Pandas 等库紧密集成方便数据处理和分析。 交互性 支持交互式绘图能够响应用户操作。与 Jupyter Notebook 和 IPython 配合使用可以创建动态的交互式图表。 如果你用过matlab那就太好了Matplotlib很多地方和matlab是相似的。 绘图还有很多不错的其它软件、库如只是我用过的matlab、R、echarts、D3当然还有plotly 、Tableau 、Power BI 等。 Echarts是基于JS的在网页上绘图很好用我最开始用的时候他还是百度的现在已经转移到 Apache 软件基金会了https://echarts.apache.org/handbook/zh/get-started/ 二、一些基本概念 使用 Matplotlib 进行绘图了解以下基本概念和操作是非常重要的 2.1 图表元素 在 Matplotlib 中一个图形Figure包含多个元素每个元素负责不同的功能。下面是各个元素的详细介绍及其在图中的作用 元素作用描述Figure图形容器整个图形的顶层容器可以包含一个或多个子图Axes。使用 plt.figure() 创建。Axes子图区域在 Figure 中定义实际的绘图区域。每个 Axes 对象表示一个坐标系。使用 plt.subplots() 创建。Axis坐标轴Axes 中的坐标轴对象用于刻度和标签的管理。每个 Axes 对象有两个 Axisx 和 y。Title图表标题图表的标题通常放在图表的顶部。使用 ax.set_title() 设置。Legend图例用于解释不同数据系列的标签。使用 ax.legend() 添加。Label坐标轴标签X 轴和 Y 轴的标签。使用 ax.set_xlabel() 和 ax.set_ylabel() 设置。Major tick主刻度主要刻度线通常用于显示轴上的主要刻度值。使用 ax.xaxis.set_major_locator() 和 ax.yaxis.set_major_locator() 设置。Minor tick次刻度辅助刻度线用于更详细的刻度显示。使用 ax.xaxis.set_minor_locator() 和 ax.yaxis.set_minor_locator() 设置。Spine坐标轴的边框Axes 边缘的线条通常用于围绕绘图区域。可以使用 ax.spines[top] 等访问和设置。Grid网格线背景网格线帮助读取数据值。使用 ax.grid() 显示或隐藏。Line数据线连接数据点的线条。使用 ax.plot() 绘制。Markers数据点标记在数据点上显示的符号如圆点、方块等。可以通过 ax.plot() 的 marker 参数设置。 2.2 常见图表类型 图表类型简介对应的方法线图通过连接数据点的线条显示数据的变化趋势plot()散点图使用点显示两组数据的关系scatter()条形图使用矩形条来显示不同类别的数据bar(), barh()饼图显示各部分在整体中的比例pie()直方图显示数据的分布情况通过分桶统计数据频率hist()箱线图显示数据的分布特征包括中位数、四分位数及异常值boxplot()面积图显示随时间变化的数量类似于线图但通过填充线条下方的区域表示fill_between(), stackplot()热力图显示数据的密度或频率通过颜色表示不同数值的大小imshow(), pcolormesh(), heatmap() (seaborn)极坐标图使用极坐标系绘制数据适合显示角度和半径的数据polar()等高线图显示三维数据的等高线通过等值线表示不同高度contour(), contourf()气泡图类似于散点图但通过点的大小表示第三个变量的数据scatter()通过设置点的大小阶梯图显示数据的阶梯变化通常用于显示分段恒定值的变化step()蜡烛图显示金融数据的价格变动通常用于股票和期货市场分析mpl_finance.candlestick_ohlc() 需要额外安装 mpl_finance 库三维图显示三维空间中的数据适合展示复杂的三维关系plot_surface(), scatter3D(), plot_wireframe()雷达图显示多变量数据通常用于展示多种特征的综合表现plot()通过极坐标系实现 一些示例 2.3 主要绘图函数及其返回值 以下是一些常用的 Matplotlib 绘图函数及其返回的对象类型。 绘图函数返回值类型说明plot()Line2D 对象列表绘制折线图或散点图每条线对应一个 Line2D 对象scatter()PathCollection 对象绘制散点图返回一个 PathCollection 对象bar()BarContainer 对象绘制柱状图返回一个 BarContainer 对象hist()列表绘制直方图返回n, bins, patchesboxplot()字典绘制箱线图返回一个包含多个 Line2D 和 Patch 对象的字典pie()列表绘制饼图返回 Wedge 对象的列表imshow()AxesImage 对象显示图像数据返回一个 AxesImage 对象contour()QuadContourSet 对象绘制等高线图返回一个 QuadContourSet 对象contourf()QuadContourSet 对象绘制填充等高线图返回一个 QuadContourSet 对象pcolormesh()QuadMesh 对象绘制伪彩色图返回一个 QuadMesh 对象errorbar()ErrorbarContainer 对象绘制带误差条的图返回一个 ErrorbarContainer 对象 2.4 Artists 的概念 在 Matplotlib 中“Artists” 是一个广泛使用的概念它指的是图形元素的抽象表示。所有在图形上绘制的内容都是一个 Artist 对象包括但不限于图形、文本、标签、图例等。 Artists 可以分为以下几类 基本元素 (Primitive Elements) 这些是最基本的图形元素例如 Line2D、Rectangle、Circle、Text 等。 容器 (Containers) 这些是用于组织其他 Artist 的对象。例如Figure 是最高级别的容器它包含所有的绘图Axes 是次一级的容器它包含具体的绘图区域和图形元素。 以下是一些常见的 Artist 类及其用途 类名说明Figure整个图形窗口或绘图区域是最高级别的容器Axes一个具体的绘图区域包含坐标轴、标题、标签等Axis坐标轴包括刻度、标签等Line2D用于绘制二维线条Rectangle用于绘制矩形Circle用于绘制圆形Text用于绘制文本Patch用于绘制任意形状的图形如多边形Legend用于绘制图例Image用于绘制图像 概念有助于你理解官网文档。 三、基本图表详解 你也可以去看官网的例子都有代码的https://matplotlib.org/stable/plot_types/index.html 以及更全的示例有几百种图https://matplotlib.org/stable/gallery/index.html 太多了详解几个常见的吧。 本节我会在第一个绘图示例中讲解一些图表通用的属性设置。 3.1 成对数据 3.11 折线图plot() matplotlib.pyplot.plot() 方法是最常用的绘图函数之一。它通常用于创建折线图但也可以用来绘制其他类型的图形。 基本用法 import matplotlib.pyplot as pltx [1, 2, 3, 4] y [1, 4, 9, 16]plt.plot(x, y) plt.show()必选参数 x, y这两个参数分别是 X 轴和 Y 轴的数据可以是列表、元组、NumPy 数组等。x 和 y 的长度必须相同。没数据就画不出图了。 可选参数主要用来设置图表的样式如线条样式、轴标签、轴取值等等。 函数返回值matplotlib.pyplot.plot()返回值是一个 Line2D 对象的列表 一条线就是一个Line2D对象的列表访问记得加索引。Line2D 对象表示绘制的线条或数据系列。每个 Line2D 对象包含有关绘图线条的信息例如数据点、样式、颜色等。 设置图表样式 1直接通过matplotlib.pyplot.plot()的可选参数设置 这种方法的优点就是简单快捷。 先看示例 plt.plot(x, y, colorpurple, # 线条颜色linestyle:, # 线条样式markero, # 标记样式markersize8, # 标记大小linewidth2.0, # 线条宽度alpha0.7, # 透明度labelData Line) # 图例标签以下是 matplotlib.pyplot.plot() 方法的常用可选参数的详细列表 参数类型描述示例color字符串、十六进制颜色码、RGB 元组线条的颜色。可以用颜色名称、十六进制颜色码或 RGB 元组指定。red, #FF0000, (1, 0, 0)linestyle字符串线条的样式。常用样式包括实线、虚线、点线等。-实线, --虚线, :点线, -.点划线linewidth浮点数线条的宽度。默认为 1.0。2.0marker字符串数据点的标记样式。常用标记包括圆点、方块、三角形等。o圆点, s方块, ^三角形markersize浮点数标记的大小。默认为 6。10label字符串图例中的标签。和 plt.legend()配合使用。Data Linealpha浮点数线条的透明度范围从 0完全透明到 1完全不透明。0.5zorder整数图形的层级顺序较高的值使图形位于较上层。2markeredgecolor字符串、十六进制颜色码、RGB 元组标记边缘的颜色。black, #000000markeredgewidth浮点数标记边缘的宽度。默认为 1。1.5markerfacecolor字符串、十六进制颜色码、RGB 元组标记内部的颜色。blue, #0000FFdashes序列或布尔值自定义虚线样式。传递一个包含线段和间隔的序列。(5, 2, 1, 2)clip_on布尔值是否裁剪超出轴范围的部分。默认为 True。Falsepicker布尔值、函数允许点击图形元素进行交互。Truedash_capstyle字符串虚线的端点样式。可选值包括 butt、round、projecting。rounddash_joinstyle字符串虚线的连接样式。可选值包括 miter、round、bevel。round 线条的颜色、样式和标记可以使用格式化字符串format string来指定而不用分别设置color、linestyle、maker这3个参数即 plt.plot(x, y, colorred, linestyle-,markero) # 等价于 plt.plot(x,y,r-o)注意 格式字符串必须紧跟x、y数据后面不能放在其它参数后面;格式字符串后面还可以照常设置其它参数;颜色、线形、标记可以设置任意数量如r,ro,r-o;当颜色与其他参数一起指定时颜色值只能用简写red-o是错的;只指定一个参数时颜色可以用任何表示方法线形和标记只能用简写。 颜色表示 支持的格式 RGB元组如(0.1, 0.2, 0.5)RGBA元组如(0.1, 0.2, 0.5, 0.3)。和rgb一样取值在[0,1]rgba最后一位是透明度。十六进制RGB或RGBA字符串#abc等价#aabbcc。不区分大小写灰度值的闭区间内浮点值的字符串表示如0是黑色1是白色。基本颜色的简写字符串使用格式化字符串时必须使用 b as blueg as greenr as redc as cyanm as magentay as yellowk as blackw as white 还有一些其它的颜色表示方法也支持不常用不展开了。 这些颜色表示方法不只是color参数能用其它需要设置颜色的参数也可以灵活使用的。 线形表示 蓝色是给参数赋值是使用的格式。 注意格式化字符串中只能使用- 表示 ‘solid’、-- 表示’dashed’、-. 表示’dashdot’、: 表示’dotted’。 标记表示 常用的 2通过 matplotlib.pyplot.plot()返回的 Line2D 对象来设置和调整图形的样式和属性 这种方式提供更细粒度的控制、更高的代码灵活性、方便修改和更新。 Line2D 对象是 matplotlib 中的一个核心类用于表示和控制绘图中的线条。它包含了有关线条的所有属性和方法可以用来创建、修改和查询线条的各种特性。 .plot()画了几条线返回的Line2D对象列表就有几个元素分别代表这些线。 写法 f plt.plot(x,y) f, plt.plot(x,y) f plt.plot(x1,y1,x2,y2) f1,f2 plt.plot(x1,y1.x2y2)第1、3行的写法返回值是列表。2、4行返回值则是对应的Line2D对象Python的解包赋值。 解包赋值unpacking assignment是 Python 中的一种语法特性允许你将一个序列如列表、元组等中的多个元素一次性赋值给多个变量。这种方式可以简化代码并使得变量赋值变得更加直观。左右元素数量要相等。 Line2D对象支持的方法 方法说明get_alpha()获取线条的透明度get_animated()检查线条是否设置为动画get_antialiased()获取线条的抗锯齿设置get_c()获取线条的颜色get_clip_box()获取裁剪边界框get_clip_on()检查裁剪是否启用get_clip_path()获取裁剪路径get_color()获取线条的颜色get_contains()获取包含测试函数get_dash_capstyle()获取虚线端点样式get_dash_joinstyle()获取虚线连接样式get_dashes()获取虚线样式get_data()获取 x 和 y 数据get_drawstyle()获取绘制样式get_ec()获取标记的边缘颜色get_figure()获取所属的 Figure 对象get_fillstyle()获取标记的填充样式get_gid()获取对象的全局唯一标识符get_hatch()获取填充图案get_label()获取线条的标签get_linestyle()获取线条样式get_linewidth()获取线条宽度get_ls()获取线条样式别名get_lw()获取线条宽度别名get_marker()获取标记样式get_markeredgecolor()获取标记的边缘颜色get_markeredgewidth()获取标记的边缘宽度get_markerfacecolor()获取标记的填充颜色get_markerfacecoloralt()获取标记的替代填充颜色get_markersize()获取标记大小get_markevery()获取标记的间隔get_path()获取线条的路径get_picker()获取拾取属性get_pickradius()获取拾取半径get_transform()获取变换属性get_visible()检查线条是否可见get_xdata()获取 x 轴数据get_ydata()获取 y 轴数据set_alpha(alpha)设置线条的透明度set_animated(b)设置线条是否为动画set_antialiased(b)设置线条的抗锯齿set_c(c)设置线条的颜色set_clip_box(rect)设置裁剪边界框set_clip_on(b)设置裁剪是否启用set_clip_path(path, transform)设置裁剪路径set_color(c)设置线条的颜色set_contains(picker)设置包含测试函数set_dash_capstyle(s)设置虚线端点样式set_dash_joinstyle(s)设置虚线连接样式set_dashes(seq)设置虚线样式set_data(x, y)设置 x 和 y 数据set_drawstyle(s)设置绘制样式set_figure(fig)设置所属的 Figure 对象set_fillstyle(s)设置标记的填充样式set_gid(gid)设置对象的全局唯一标识符set_hatch(hatch)设置填充图案set_label(label)设置线条的标签set_linestyle(s)设置线条样式set_linewidth(w)设置线条宽度set_marker(m)设置标记样式set_markeredgecolor(ec)设置标记的边缘颜色set_markeredgewidth(ew)设置标记的边缘宽度set_markerfacecolor(fc)设置标记的填充颜色set_markerfacecoloralt(fc)设置标记的替代填充颜色set_markersize(sz)设置标记大小set_markevery(every)设置标记的间隔set_path_effects(path_effects)设置路径效果set_picker(picker)设置拾取属性set_pickradius(r)设置拾取半径set_transform(t)设置变换属性set_url(url)设置 URLset_visible(b)设置线条是否可见set_xdata(x)设置 x 轴数据set_ydata(y)设置 y 轴数据 如果你需要更多细节建议参考 Matplotlib 官方文档。 设置各种标签 包括标题、轴标签、文本、点的注释、图例。 标题 通常 plt.plot(x, y) plt.title(这是图表的标题)或者 fig, ax plt.subplots() ax.plot(x, y) ax.set_title(这是图表的标题)这是绘制子图的fig代表整张图ax代表这个子图即Axes。 标题是整张图或者子图的标题所以Figure对象.title()和Axes.set_title()对象才能设置前面提到的Line2D这样的对象是不能设置标题的。 可以使用 fig.suptitle() 方法为整个图形包含多个子图设置全局标题。 标题样式 plt.title(这是图表的标题, fontdict{fontsize: 18, fontweight: bold, family: simsun, color: green})字体名称在电脑搜索栏搜索字体点进去就会看到字体名称就是xxx.ttf。xxx就是这里要用的名称。 Matplotlib的默认字体是不能显示中文的你不用在所有使用中文标签的函数中都单独设置一遍字体可以设置一个全局字体如 import matplotlib.pyplot as plt import matplotlib as mpl# 全局设置字体属性 mpl.rcParams[font.size] 14 mpl.rcParams[font.family] serif mpl.rcParams[font.weight] boldx [1, 2, 3, 4] y [1, 4, 9, 16]plt.plot(x, y) plt.title(这是标题) plt.show()轴标签 和标题设置类似的就是坐标轴起个名字。 使用 plt.xlabel() 和 plt.ylabel()或者 ax.set_xlabel() 和 ax.set_ylabel()。 样式设置类似的。 图例 设置图例legend可以帮助识别不同的图形元素如线条、点、柱状图等。 使用label.legend() import matplotlib.pyplot as pltx [1, 2, 3, 4] y1 [1, 4, 9, 16] y2 [1, 2, 3, 4]plt.plot(x, y1, label线条 1) plt.plot(x, y2, label线条 2)# 添加图例 plt.legend() plt.show()或者使用一个列表传入 plt.legend([Line1,Line2])若只显示特定对象的图例比如只显示Line1和Line2 ax.legend(handles[line1, line2], labels[自定义线条 1, 自定义线条 2])Axes对象也是一样的方法。 图例的位置upper left、upper right、lower left、lower right、upper center、lower center、center left、center right、center、best。 ax.legend(locupper left)可以通过 prop 参数设置字体大小和其他字体属性通过 frameon 参数设置是否显示图例的边框通过 shadow 参数设置图例的阴影效果。 ax.legend(locupper right, prop{size: 14, weight: bold}, # 字体属性frameonFalse, # 不显示边框shadowTrue # 显示阴影 )文本 .text() 方法可以在图形的任意位置添加文本。需要指定文本的位置x 和 y 坐标和内容。 import matplotlib.pyplot as pltx [1, 2, 3, 4] y [1, 4, 9, 16]plt.plot(x, y) plt.text(2, 10, 这里是文本, fontsize14, colorblue, fontweightbold, styleitalic) # 设置文本属性 plt.show()注释 .annotate() 方法不仅可以添加文本还可以绘制箭头或其他标记来指示文本所指的位置。 import matplotlib.pyplot as plt import numpy as np import matplotlib as mplmpl.rcParams[font.family] simsunfig, ax plt.subplots(figsize(5, 2.7))t np.arange(0.0, 5.0, 0.01) s np.cos(2 * np.pi * t) line, ax.plot(t, s, lw2)ax.annotate(local max, xy(2, 1), xytext(3, 1.5),arrowpropsdict(facecolorblack, shrink0.05))ax.set_ylim(-2, 2)plt.grid() plt.show()详细参数https://matplotlib.org/stable/users/explain/text/annotations.html#plotting-guide-annotation 文本中使用latex表示公式 ax.set_title(r$\sigma_i15$)各种字母、数学符号的表示https://matplotlib.org/stable/users/explain/quick_start.html#using-mathematical-expressions-in-text 设置坐标轴 每个Axes都有2个或3个坐标轴。 设置刻度比例比如对数log、线性linear等 import matplotlib.pyplot as plt import numpy as npx np.logspace(1, 10, 100) y x ** 2fig, axs plt.subplots(1, 2)axs[0].plot(x, y, b-*) axs[0].set_xscale(log)axs[1].plot(x, y, r-o) axs[1].set_yscale(log)plt.show()设置坐标范围 plt.xlim(left, right) 用于设置 x 轴的范围其中 left 是最小值right 是最大值。plt.ylim(bottom, top) 用于设置 y 轴的范围其中 bottom 是最小值top 是最大值。 设置刻度和刻度标签标签 import matplotlib.pyplot as plt# 创建示例数据 x [1, 2, 3, 4, 5] y [10, 15, 13, 17, 20]# 创建图形和轴对象 fig, ax plt.subplots() ax.plot(x, y)# 设置 x 轴和 y 轴的刻度 ax.set_xticks([1, 2, 3, 4, 5]) # 设置 x 轴的刻度位置 ax.set_yticks([10, 15, 20]) # 设置 y 轴的刻度位置# 设置 x 轴和 y 轴的刻度标签 ax.set_xticklabels([A, B, C, D, E]) # 设置 x 轴的刻度标签 ax.set_yticklabels([Low, Medium, High]) # 设置 y 轴的刻度标签# 显示图形 plt.show()即在相应的位置显示刻度值如果设置了刻度标签就显示标签。 或者等距显示 # 设置 x 轴和 y 轴的刻度间隔 ax.xaxis.set_major_locator(MultipleLocator(2)) # x 轴每隔 2 显示一个刻度 ax.yaxis.set_major_locator(MultipleLocator(5)) # y 轴每隔 5 显示一个刻度有时候每个刻度标签可能比较长需要旋转一下文本方向 # 设置 x 轴和 y 轴的刻度标签方向 ax.tick_params(axisx, labelrotation45) # x 轴刻度标签旋转 45 度 ax.tick_params(axisy, labelrotation90) # y 轴刻度标签旋转 90 度设置双坐标轴 双x轴同理。 import matplotlib.pyplot as plt import matplotlib as mplmpl.rcParams[font.family] simsun# 创建示例数据 x [1, 2, 3, 4, 5] y1 [10, 15, 13, 17, 20] y2 [80, 120, 150, 170, 200]# 创建图形和主轴对象 fig, ax1 plt.subplots()# 绘制第一个 y 轴的数据 ax1.plot(x, y1, b-*, labely1数据) ax1.set_xlabel(X轴标签) ax1.set_ylabel(Y1轴标签, colorg) ax1.tick_params(axisy, labelcolorg)# 创建第二个 y 轴使用 twinx() 方法 ax2 ax1.twinx() ax2.plot(x, y2, r:o, labely2数据) ax2.set_ylabel(Y2轴标签, colorb) ax2.tick_params(axisy, labelcolorb)# 添加图例 ax1.legend(locupper left) ax2.legend(locupper right)# 显示图形 plt.show()绘制子图 在 matplotlib 中可以使用 .subplot 和 .subplots 方法来绘制多个子图 plt.subplot(nrows, ncols, index): nrows: 子图的行数。ncols: 子图的列数。index: 当前子图的位置从 1 开始按行优先顺序。 plt.subplots(nrows, ncols, figsize(width, height)): nrows: 子图的行数。ncols: 子图的列数。figsize: 图形的尺寸宽度, 高度以英寸为单位。返回 fig 和 axs其中 fig 是图形对象axs 是一个包含所有子图的数组。 subplot 方法用于创建单个图形中的多个子图按照指定的行列布局排列。你可以逐个创建子图并在上面绘制数据。 import matplotlib.pyplot as plt# 创建图形和子图 plt.figure(figsize(10, 6))# 第一个子图 plt.subplot(2, 2, 1) # 2 行 2 列的网格中的第一个子图 plt.plot([1, 2, 3], [4, 5, 6]) plt.title(子图 1)# 第二个子图 plt.subplot(2, 2, 2) # 2 行 2 列的网格中的第二个子图 plt.bar([1, 2, 3], [4, 5, 6]) plt.title(子图 2)# 第三个子图 plt.subplot(2, 2, 3) # 2 行 2 列的网格中的第三个子图 plt.scatter([1, 2, 3], [4, 5, 6]) plt.title(子图 3)# 第四个子图 plt.subplot(2, 2, 4) # 2 行 2 列的网格中的第四个子图 plt.hist([1, 2, 3, 4, 5]) plt.title(子图 4)# 调整布局以避免重叠 plt.tight_layout()# 显示图形 plt.show()subplots 方法一次性创建多个子图并返回一个包含所有子图的数组。这个方法适用于当你需要创建网格布局的子图时。 import matplotlib.pyplot as plt# 创建图形和子图 fig, axs plt.subplots(2, 2, figsize(10, 6))# 第一个子图 axs[0, 0].plot([1, 2, 3], [4, 5, 6]) axs[0, 0].set_title(子图 1)# 第二个子图 axs[0, 1].bar([1, 2, 3], [4, 5, 6]) axs[0, 1].set_title(子图 2)# 第三个子图 axs[1, 0].scatter([1, 2, 3], [4, 5, 6]) axs[1, 0].set_title(子图 3)# 第四个子图 axs[1, 1].hist([1, 2, 3, 4, 5]) axs[1, 1].set_title(子图 4)# 调整布局以避免重叠 plt.tight_layout()# 显示图形 plt.show()subplot_mosaic 是 matplotlib 3.4.0 版本引入的一个功能允许你通过定义一个网格布局的“马赛克”来创建子图。这种方法比传统的 subplot 方法更灵活因为你可以使用字符串来定义布局而不是指定行列数。 plt.subplot_mosaic(layout, figsize(width, height)): layout: 一个嵌套的列表其中每个子列表表示一行每个元素表示一个子图的标识符。相同的标识符表示共享同一个子图区域。figsize: 图形的尺寸宽度, 高度以英寸为单位。返回 fig 和 axs其中 fig 是图形对象axs 是一个字典键是子图的标识符值是对应的 Axes 对象。 使用标识符: 在 layout 中标识符是用来指定子图的位置和布局的。你可以根据需要自定义这些标识符以适应复杂的布局需求。 import matplotlib.pyplot as plt import matplotlib as mplmpl.rcParams[font.family] simsun# 使用 subplot_mosaic 创建子图布局 fig, axs plt.subplot_mosaic([[A, B],[C, B],],figsize(10, 8) )# 在子图 A 上绘制数据 axs[A].plot([1, 2, 3], [4, 5, 6]) axs[A].set_title(子图 A) axs[A].grid(whichboth, linestyle--, linewidth0.5, colorc)# 在子图 B 上绘制数据 axs[B].bar([1, 2, 3], [4, 5, 6]) axs[B].set_title(子图 B) axs[B].grid(whichboth, linestyle:, linewidth0.5, colory)# 在子图 C 上绘制数据 axs[C].scatter([1, 2, 3], [4, 5, 6]) axs[C].set_title(子图 C) axs[C].grid(whichboth, linestyle-, linewidth0.5, colorr)# 调整布局以避免重叠 plt.tight_layout() # 显示图形 plt.show()显示网格线 plt.grid(whichboth, linestyle--, linewidth0.5, colorgray)参数类型默认值说明whichstr‘both’指定要显示的网格线类型- both显示主网格线和次网格线- major显示主网格线- minor显示次网格线axisstr‘both’指定要应用网格线的轴- both对 x 轴和 y 轴应用网格线- x仅对 x 轴应用网格线- y仅对 y 轴应用网格线colorstr‘black’网格线的颜色。可以是颜色名称、RGB 颜色值或十六进制颜色代码如 red、#FF5733linestylestr‘-’网格线的样式- -实线- --虚线- :点线- -.点划线linewidthfloat1.0网格线的宽度以磅为单位 保存为图片 plt.savefig() 是 matplotlib 中用于将当前图形保存到文件的方法。它可以保存为多种文件格式包括 PNG、PDF、SVG、EPS 等。你可以使用 plt.savefig() 方法来保存图形以便后续查看、分享或嵌入到文档中。 import matplotlib.pyplot as plt# 示例数据 x [1, 2, 3, 4, 5] y [10, 15, 13, 17, 20]# 创建图形和轴对象 plt.plot(x, y, markero)# 添加标题和标签 plt.title(保存图形示例) plt.xlabel(X 轴) plt.ylabel(Y 轴)# 保存图形到文件 plt.savefig(my_plot.png) # 保存为 PNG 格式# 显示图形 plt.show()参数类型默认值说明fnamestrNone文件名或路径。支持相对路径和绝对路径文件扩展名决定了保存的格式。dpiint100图像的分辨率以每英寸点数DPI为单位。较高的 DPI 值会产生更高质量的图像。bbox_inchesstr‘tight’设定边界框的大小。tight 自动调整边界框以适应图形内容。pad_inchesfloat0.1图像边界与内容之间的填充空间以英寸为单位。transparentboolFalse如果为 True背景将透明适用于 PNG 格式。qualityint95图像质量适用于 JPEG 格式取值范围 1-100。formatstrNone文件格式如果 fname 参数中包含扩展名则此参数可以省略。facecolorstr‘w’ (white)图像的背景颜色。w 表示白色none 表示透明。edgecolorstr‘w’ (white)图像的边缘颜色。 前面通过折线图引入介绍了Matplotlib绘图的各种常用基本操作。但仍然只是冰山一角还有很多设置、特性没有展开说感兴趣的部分去官网看文档即可。 3.12 散点图scatter() scatter() 是 matplotlib 中用于绘制散点图的函数。散点图显示了两个变量之间的关系通过将数据点在二维坐标系中标记出来。每个点的位置由其 x 和 y 坐标决定点的颜色和大小也可以根据其他变量进行编码。 import matplotlib.pyplot as plt# 示例数据 x [1, 2, 3, 4, 5] y [10, 15, 13, 17, 20]# 创建散点图 plt.scatter(x, y)# 添加标签和标题 plt.xlabel(X 轴) plt.ylabel(Y 轴) plt.title(散点图示例)# 显示图形 plt.show()x: x 轴的数据坐标。y: y 轴的数据坐标。s: 点的大小。可以是一个单一的数值也可以是一个与 x 和 y 长度相同的数组。c: 点的颜色。可以是单一颜色也可以是一个颜色数组用于根据数据值设置颜色。cmap: 如果 c 是一个数组可以使用 cmap 指定颜色映射。常见的 colormap 包括 viridis、plasma、inferno、magma。alpha: 点的透明度范围从 0完全透明到 1完全不透明。marker: 点的形状如 o圆形、s方形、^三角形等。edgecolor: 点的边缘颜色。linewidths: 点的边缘线宽。 3.13 条形图bar() import matplotlib.pyplot as plt# 示例数据 categories [A, B, C, D] values [10, 20, 15, 25]# 创建图形 plt.figure(figsize(8, 6))# 绘制条形图 plt.bar(categories, values)# 添加标题和标签 plt.title(条形图示例) plt.xlabel(类别) plt.ylabel(值)# 显示图形 plt.show()参数类型默认值说明xarray-likeNone条形图的 x 轴数据即类别或位置。heightarray-likeNone条形图的高度或长度。widthfloat0.8条形的宽度默认为 0.8。如果绘制水平条形图则为条形的高度。alignstr‘center’条形的对齐方式- center中心对齐- edge边缘对齐colorstr, array-likeNone条形的颜色可以是颜色名称、RGB 颜色值、十六进制颜色代码或颜色列表。edgecolorstr‘black’条形边缘的颜色。linewidthfloat1.0条形边缘的宽度以磅为单位。tick_labelarray-likeNone设置 x 轴刻度标签。hatchstrNone条形的填充样式如 /、\\、’ 垂直条形图bar() 水平条形图barh() 太多了先写这么多吧官网都有教程的。 3.2 统计 3.21 直方图 3.22 箱线图 3.23 饼图 3.24 误差线 3.3 网格 3.4 不规则网格 3.5 3D和体积数据
http://www.w-s-a.com/news/205420/

相关文章:

  • 个股期权系统网站开发小清新wordpress模板
  • 全中文网站开发建筑公司企业愿景文案
  • 广州网站建设正规公司建设银行信用卡中心网站
  • 哪个网站是专门做封面素材怎么制作app平台
  • 网站开发 平均工资商标注册在哪个部门申请
  • 做外贸需要自己的网站吗营销型网站建设市场分析
  • 绍兴网站制作推广wordpress 无法自动升级
  • 阿里云建站数据库用什么app制作开发费用多少
  • 中国住房和城乡建设部网站资质查询中小开网站
  • 交易所网站开发水果营销软文
  • 石家庄有什么好玩的地方2017织梦网站怎么做seo
  • wordpress项目插件seo的含义
  • 网站平台建设的作用电影宣传类网页界面设计
  • 户外网站模板国外优秀的平面设计网站
  • 家政网站怎么做网站机房建设方案
  • 学校网站建设运行情况2022年近期舆情热点话题
  • 做淘宝需要知道什么网站吗有没有做软件的网站
  • 安丘网站建设制作做网站和微信小程序
  • 京东网站的建设与发展前景黑龙江建设网官网登陆
  • soho的网站怎么做微网站平台建设方案
  • 网站开发下载阿里云oss做视频网站
  • 东莞营销网站制作做一个网站建设
  • 啥网站都能看的浏览器下载网站后台管理系统展望
  • 新建站点步骤汉中 wordpress联盟
  • 坪山网站设计的公司网站 seo 设置
  • 济南网站设计公司排名如何免费注册网站域名
  • 网站开发分工甜妹妹福利wordpress
  • 网站中英文要怎么做网站建设的策划文案
  • 合肥推广外包公司佛山seo
  • 成都网站品牌设计策划课堂网站开发