IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 【机器学习&深度学习】03 Matplotlib -> 正文阅读

[人工智能]【机器学习&深度学习】03 Matplotlib

1 pylot介绍

pylot是Matplotlib中的一个库,用于绘制各类图画的命令子库

导入方式:

import matplotlib.pyplot as plt

2 图像的读取、绘制、显示、保存

2.1 figure():用来打开输出窗口

标准函数格式:

plt.figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True)

参数说明:

  • num 用来指定图像编号或者名称。如 num='my_figure' 就是将图像的名称设为 my_figure
  • figsize 的作用是指定图像的宽和高,单位为英寸。如 figsize=(6, 8) 就是指定图像的大小为宽6英寸,长8英寸。
  • dpi 的作用是指定绘图对象的分辨率,dpi 越高分辨率越高,默认 dpi 为80。如 dpi=100 就是将图像的 dpi 设置为100.
  • facecolor 用来指定背景颜色。如 facecolor=black 就是将背景颜色设为黑色。
  • edgecolor 用来指定边框颜色。如 edgecolor=black
  • frameon 则表示是否显示边框。frameonTrue 则显示,为 False 则不显示。

2.2 show()/imshow():显示图像

在使用 figure() 建立图像后通常都需要调用函数 show(),这是因为调用 figure() 建立的图像是储存在内存中的,如果不调用 show() 函数将可能导致图像无法正确的被显示出来。

imshow 不仅可以显示图像,还可以显示其格式;show() 则仅会显示图像。

plt.imshow()函数负责对图像进行处理,并显示其格式。 plt.show()则是将plt.imshow()处理后的函数显示出来。

调用方法:

plt.imshow()
plt.show()

2.3 plot():绘制函数

用来在 2D 平面上绘制点和线

函数格式:

plt.plot(x, y, scalex=True, scaley=True, data=None)

参数说明:

xy 分别是数据的横坐标和纵坐标。xy 可以传入多种数据结构,包括元组,列表,np.array 和 pd.Series。
在这里插入图片描述
1.绘制颜色

当我们想要将多种数据绘制在同一张图像中时,一个最基本的方法就是用不同的颜色来区分这些数据。在 plot() 中,输出的颜色通过颜色字符控制:

颜色字符说明颜色字符说明
‘b’蓝色‘m’洋红色
‘g’绿色‘y’黄色
‘r’红色‘k’黑色
‘c’青绿色‘w’白色
‘#000000’RGB色彩,这里是黑色‘0.8’灰度计数

2. 风格字符

另一种划分数据的方式是使用不同风格的线条。改变线条的风格可以通过风格字符实现:

风格字符说明
‘-’实线
‘–’破折线
‘-.’点划线
‘:’虚线
‘’ ‘’无线条

3. 标记字符

有时候我们希望看到数据点在原图中的位置。此时我们就可以通过设定标记字符来绘制数据点。

标记字符说明标记字符说明
‘.’点标记‘4’右花三角标记
‘,’极小点标记(像素)‘s’实心方形标记
‘o’实心圈标记‘p’实心五角标记
‘v’倒三角标记‘*’星形标记
‘^’上三角标记‘h’竖六边形标记
‘>’右三角标记‘H’横六边形标记
‘<’左三角标记‘+’十字标记
‘1’下花三角标记‘x’x标记
‘2’上花三角标记‘D’菱形标记
‘3’左花三角标记‘d’瘦菱形标记
‘|’垂直线标记

4. 复合控制字符:

在这里插入图片描述

2.4 imread():从外部读取图像

函数格式:

plt.imread(fname, format=None)

参数说明:

  • fname :设定要读取的图像文件的路径和名称。例如 fname = 'D:\local\test_img.png' 意味着我们将读取路径 D:\local\ 下格式为 png 的图像文件 test_img。
  • format :设定读取数据的图像文件格式。如果为 None,则将从文件名中获取。test_img.png 意味着图片是以 png 格式储存的。

**注意:**如果想要在后续的流程中使用读取的图像,imread() 读取出来的数据需要被储存在某个变量中。imread() 读取出来的图像数据将被储存为 numpy.array 格式。

2.5 savefig():保存图像

函数格式:

plt.savefig(fname, dpi=None, facecolor='w', edgecolor='w')

参数说明:

  • fname :指定保存的文件名。例如当 fname 的值为 ‘my_img’ 时保存好的图像文件的名称就是 ‘my_img’。
  • dpi :指定输出文件的分辨率,默认和原图像保持一致。
  • facecolor 用来指定背景颜色。如 facecolor=black 就是将背景颜色设为黑色。
  • edgecolor 用来指定边框颜色。如 edgecolor=black

**注意:**运行 savefig() 函数后图像将被保存在当前程序的运行目录下。

在这里插入图片描述
在这里插入图片描述

2.6 subplot()/subplots():显示多张图片

显示多张图片的两种方法:

  • 每次输出一张图片都用 figure() 函数打开一个新的图像窗口;

  • 使用 subplot()subplots() 函数一次在一个图像窗口中显示多张图片。

函数格式:

plt.subplot(nrows=1, ncols=1, index=1, **fig_kw)
plt.subplots(nrows=1, ncols=1, **fig_kw)

参数说明:

  • nrows 的作用是设定图像的总行数。
  • ncols 的作用是设定图像的总列数。
  • index 的作用是索引到某个具体的图像。这里需要注意我们的图像按照 从左往右,从上往下 的顺序从 1 开始排列。

注意:subplot()subplots() 会返回两个组件:绘图区域 fig,以及坐标轴等组件 ax。通常来说我们可以不用分开读取这两个部分,不过当有需要对其中的一部分进行设置的时候我们可以通过如下方式进行读取:

[in]: fig, ax = subplot(1,1)# 一个图像使用
[in]: figs, axes = subplots(2,3)# 多个图像使用

一般对某一个图像会用 figax 这样的变量储存,多个图像会用 figsaxes 来储存。

去除上图中所有的刻度,可以通过 xticks([])yticks([]) 实现:
在这里插入图片描述

3 图像组件

3.1 刻度范围

plt.xlim()plt.ylim() 或者ax.set_xlim()ax.set_ylim()对坐标轴的刻度范围进行限制。

两种方法将数据放在更大范围的图标中显示

方法一:ax.set_xlim([0, 20])

ax 里面进行操作的时候使用的命令是 set_xlimset_ylim

在这里插入图片描述

方法二:plt.xlim([0, 20])
在这里插入图片描述

3.2 刻度划分

通过 plt.xticks()plt.yticks()或者 ax.set_xticks()ax.set_yticks() 来对坐标轴上的刻度进行编辑。

注意:

  • 刻度不一定可以铺满整个坐标轴,如果无法铺满则剩下的部分不会显示刻度;
  • range() 函数无法生成浮点数,因此如果刻度需要出现小数最好使用第二种方法输入刻度;
  • 设置刻度时无法显示最后一个刻度,因此如果需要显示最后一个刻度最好多生成一个刻度

在这里插入图片描述

3.3 显示刻度标签

通过 ax.set_xticklabels()ax.set_yticklabels() 设置每个刻度对应的标签。

3.4 坐标轴标签或标题

通过 ax.set_xlabel()ax.set_ylabel() 或者 plt.xlabel()plt.ylabel() 来实现。
在这里插入图片描述

4 绘图函数

4.1 饼状图: plt.pie()

通过扇形的圆心角度数来表示某类数据占总数据的百分比。

函数格式:

pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=False, labeldistance=1.1, startangle=0, radius=1, counterclock=True, wedgeprops=None, textprops=None, center=0, 0, frame=False, rotatelabels=False, *, normalize=None, data=None)

参数说明:

  • x: 输入数据
  • explode: 某个 label 的突出程度
  • labels: 每一类数据的标签
  • colors: 每一类数据的颜色

在这里插入图片描述

4.2 直方图:plt.hist()

可以很好的展示数据分布情况的图表。通常用横轴表示数据范围,纵轴表示分布情况。正态分布通常就是以直方图的形式展示出来。

函数格式:

hist(x, bins=None, range=None, density=False, weights=None, cumulative=False, bottom=None, histtype='bar', align='mid', orientation='vertical', rwidth=None, log=False, color=None, label=None, stacked=False, *, data=None, **kwargs)

参数说明:

  • x: 输入数据
  • bins: 直方图的长条形数量
  • histtype: 直方图类型,包括 ‘bar’, ‘barstacked’, ‘step’, ‘stepfilled’

在这里插入图片描述

4.3 柱状图:plt.bar()

柱状图又被称之为条形图,是一种非常常用的图表。柱状图可以很好的比较各类数据之间的大小关系。

函数格式:

bar(x, height, width=0.8, bottom=None, *, align='center', data=None, **kwargs)

参数说明:

  • x: 表示x坐标,数据类型为int或float类型,刻度自适应调整;也可传dataframe的object,x轴上等间距排列;

  • height: 表示柱状图的高度,也就是y坐标值,数据类型为int或float类型;

  • width: 表示柱状图的宽度,取值在0~1之间,默认为0.8;

  • label: 额外参数,用来指定每种数据的标签,后续可以生成图例

  • align:柱状图的中心位置,默认"center"居中,可设置为"lege"边缘;

  • bottom:柱状图的起始位置,也就是y轴的起始坐标;

  • color: 额外参数,用来指定柱的颜色

  • tick_label:下标标签;

在这里插入图片描述

4.4 水平柱状图:barh()

常见的柱状图 X 轴水平,Y 轴垂直。有时候我们需要将两个轴反过来,这时候就可以使用 plt.barh() 函数绘制水平柱状图。

函数的格式:

barh(y, width, height=0.8, left=None, *, align='center', **kwargs)

参数说明:

  • y: 表示y坐标,数据类型为int或float类型,刻度自适应调整;也可传dataframe的object,y轴上等间距排列;
  • height: 表示柱状图的宽度,也就是x坐标值,数据类型为int或float类型;
  • width: 表示柱状图的水平长度,取值在0~1之间,默认为0.8;
  • label: 额外参数,用来指定每种数据的标签,后续可以生成图例
  • color: 额外参数,用来指定柱的颜色

在这里插入图片描述

4.5 堆叠柱状图:plt.bar()

堆叠柱状图也是通过 plt.bar() 进行绘制,通过 bottom 参数指定某一个类别的柱的基底,从而实现柱的堆叠。

函数格式:

bar(x, height, width=0.8, bottom=None, *, align='center', data=None, **kwargs)

参数说明:

  • x: 表示x坐标,数据类型为int或float类型,刻度自适应调整;也可传dataframe的object,x轴上等间距排列;

  • height: 表示柱状图的高度,也就是y坐标值,数据类型为int或float类型;

  • width: 表示柱状图的宽度,取值在0~1之间,默认为0.8;

  • label: 额外参数,用来指定每种数据的标签,后续可以生成图例

  • align:柱状图的中心位置,默认"center"居中,可设置为"lege"边缘;

  • bottom:柱状图的起始位置,也就是y轴的起始坐标;

  • color: 额外参数,用来指定柱的颜色

  • tick_label:下标标签;

在这里插入图片描述

4.6 散点图:plt.scatter()

散点图指通过对应坐标确定位置并绘制坐标点的图表。

函数格式:

scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, *, edgecolors=None, plotnonfinite=False, data=None, **kwargs)

参数说明:

  • x: 数据点的横坐标
  • y: 数据点的纵坐标
  • s: 数据点的大小
  • c: 数据点的颜色
  • marker: 数据点的样式

在这里插入图片描述

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-05-07 11:11:00  更:2022-05-07 11:13:08 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 7:39:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码