Day18_0.1基础学习MATLAB学习小技巧总结(18)——MATLAB绘图篇(1)

利用空闲时间把碎片化的MATLAB知识重新系统的学习一遍,为了在这个过程中加深印象,也为了能够有所足迹,我会把自己的学习总结发在专栏中,以便学习交流。

参考书目:《MATLAB基础教程 (第三版) (薛山)》

之前的章节都是基础的数据运算用法,对于功课来说更加重要的内容是建模、绘图、观察数据趋势,接下来我会结合自己的使用经验,来为大家分享绘图、建模使用的小技巧。

二维图形绘制

在本章开始前首先假定一组二维数组:

|---|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|
| x | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| y | 1.2 | 1.8 | 1.6 | 1.5 | 1.7 | 1.5 | 1.2 | 8.0 | 5.0 | 9.0 |

MATLAB的绘图需要数据作为支撑,可以将数据以EXECL表格的形式导入到MATLAB中,也可以在MATLAB中新建数据mat,需要用时直接引用即可。

绘制二维图形的主要函数为plot,以下是一些经常需要用到的绘图函数:

|----------|------------------------|
| 函数名 | 功能 |
| plot | 在线性坐标系中绘制二维图形 |
| loglog | 在对数坐标系中绘制二维图形 |
| semilogx | 二维图形绘制。x轴为对数坐标,y轴为线性坐标 |
| semilogy | 二维图形绘制,x轴为线性坐标,y为对数坐标 |
| plotyy | 绘制双y轴图形 |

这是MTALAB官网中关于线图函数的表格,供参考

以上的函数皆是绘制二维图形的,将坐标系对应后,对号入座的应用,应用方式都是一样的,不多加赘述,这里以用的最多的plot函数展开介绍。

plot函数:

|--------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------|---|
| plot(x,y) | 创建Y中数据对 x中对应值的二维线图。 注意: 1、要绘制由线段连接的一组坐标,请将x和Y指定为相同长度的向量。 2、要在同一组坐标区上绘制多组坐标,请将x或Y中的至少一个指定为矩阵。 | |
| plot(x,y,Linespecn) | 使用指定的线型、标记和颜色创建绘图。 | |
| plot(X1,Y1,....,Xn,Yn) | 在同一组坐标轴上绘制多对x和y坐标。此语法可替代将坐标指定为矩阵的形式. | |
| plot(X1,Y1,Linespec1,....,Xn,Yn,Linespecn) | 可为每个 x-y对组指定特定的线型、标记和颜色。您可以对某些 x-y 对组指定Linespec,而对其他对组省略它。例如,plot(X1,Y1,"o",X2,Y2)对第一个 x-y 对组指定标记,但没有对第二个对组指定标记。 | |
| plot(Y) | 绘制Y对一组隐式x坐标的图。 注意: 1、如果Y是向量,则x坐标范围从1到1ength(Y)。 2、如果Y是矩阵,则对于y中的每个列,图中包含一个对应的行。x坐标的范围是从1到Y的行数。 3、如果Y包含复数MATLAB绘制Y的虚部对Y的实部的图。如果同时指定了x和Y,虚部将被忽略。 | |
| plot(Y,Linespec) | 使用隐式x坐标绘制 Y,并指定线型、标记和颜色。 | |

1 plot(Y)

该命令中的Y可以是向量、实数矩阵或复数向量。如果是向量,就以向量的索引为横坐标,以向量元素值为纵坐标绘制图形,以直线段顺序连接各点:如果是矩阵,就绘制Y的各列:如果丫是复向量,就以复数的实部为横坐标,以虚部为纵坐标绘制图形,即plot(y)相当于 plot(real(y),imag(y)),而在其他的绘图格式中复数的虚部会被忽略。

例:

Matlab 复制代码
x = randi(100,1,20)
y = 1/sqrt(2*pi)*exp(-1/2*x.^2);
plot(y)

2 plot(x,y)

该命令中的x和y可以为向量和矩阵,当x和y的结构不同时,有不同的绘制方式。x、y均为n维向量时,以x的元素为横坐标,以y的元素为纵坐标绘制图形。x为n维向量,y为mxn或nxm矩阵时,以x的元素为横坐标,绘制y的m个n维向量。x、y均为 m x n 矩阵时,以x的各列为横坐标,以y的对应列为纵坐标绘制图形.

Matlab 复制代码
x = [1,2,3,4,5,6,7,8,9,10];
y = [1.2,1.8,1.6,1.5,1.7,1.5,1.2,8.0,5.0,9.0];
plot(x,y)
plot(x,y,'LineStyle','-','Color','r')

3 plot(x,y,Linespec)

该命令中加入了 LineSpec 参数,用于图形外观属性的控制,包括线条的形状、颜色和点的形状、颜色。该参数的常用设置选项如下表所示。

相关推荐
AI_NEW_COME3 分钟前
构建全方位大健康零售帮助中心:提升服务与体验
大数据·人工智能
IT古董8 分钟前
【机器学习】机器学习的基本分类-强化学习-Actor-Critic 方法
人工智能·机器学习·分类
martian6658 分钟前
【人工智能数学基础】——深入详解贝叶斯理论:掌握贝叶斯定理及其在分类和预测中的应用
人工智能·数学·分类·数据挖掘·贝叶斯
mingo_敏9 分钟前
深度学习中的并行策略概述:2 Data Parallelism
人工智能·深度学习
呆呆的猫15 分钟前
【LeetCode】227、基本计算器 II
算法·leetcode·职场和发展
Tisfy17 分钟前
LeetCode 1705.吃苹果的最大数目:贪心(优先队列) - 清晰题解
算法·leetcode·优先队列·贪心·
余额不足1213838 分钟前
C语言基础十六:枚举、c语言中文件的读写操作
linux·c语言·算法
众拾达人38 分钟前
Android自动化测试实战 Java篇 主流工具 框架 脚本
android·java·开发语言
皓木.40 分钟前
Mybatis-Plus
java·开发语言
不良人天码星40 分钟前
lombok插件不生效
java·开发语言·intellij-idea