下边的笔记只大概记录了使用MATLAB画图的部分。
去年做项目的时候本来说想用MATLAB的App designer的,结果后来项目无疾而终了,MATLAB也没有深入的学习下去。
最近发现还是有不少人搜索这本书,这里直接把之前收集的MATLAB书籍的pdf版放下吧。ps:全带目录且高清!!(大家加油!)个人觉得自学一本通写的还是蛮通俗易懂的。

自取:
链接:https://pan.baidu.com/s/1AhHjT04KkpyOWtkSTW7t0A
提取码:hgg0

目录

  • 一、MATLAB基础知识
    • 1、数据类型
      • 数值类型
      • 逻辑类型
      • 字符和字符串
      • 函数句柄
  • 二、数组与矩阵
  • 三、MATLAB编程基础
  • 四、数据可视化
    • 1、图形绘制
      • 图形绘制的基本步骤
    • 2、二维图形绘制
      • plot指令
      • figure指令
      • xlim、ylim指令和axis指令
    • 3、三维图形绘制
  • 五、句柄图形对象
    • 句柄图形对象创建函数
    • daspect

一、MATLAB基础知识

1、数据类型

数值类型

1、在未加说明与特殊定义时,MATLAB 对所有数值按照双精度浮点数类型(double,8字节)进行存储和操作。
2、双精度浮点数参与运算时,返回值的类型依赖于参与运算的其他数据类型。
3、MATLAB 中使用 Inf 和-Inf 分别代表正无穷量和负无穷量,NaN 表示非数值量。正负无穷量的产生一般是由于运算溢出,产生了超出双精度浮点数数值范围的结果,非数值量则是由于 0/0 或 Inf/Inf 类型的非正常运算而产生的,这两个 NaN 彼此是不相等的。

逻辑类型

作为所有关系和逻辑表达式的输入,MATLAB 把任何非零数值当作真,把零当作假。
所有关系和逻辑表达式的输出:对于真,输出为 1;对于假,输出为 0。
逻辑类型数据进行运算时需要用到关系操作符和逻辑运算符。

字符和字符串

1、一个字符串是存储在一个行向量中的文本,这个行向量中的每一个元素代表一个字符。实际上,元素中存放的是字符的内部代码,即 ASCII 码。
字符串一般是 ASCII 值的数值数组,它作为字符串表达式进行显示。

字符串数组的索引示例

String ='Every good boy does fun.';
U =String(7:10)
U =good
U =String(10:-1:7)U =doog

上例中字符串像数组一样进行编址。这里元素 7~10 包含单词 good。

2、一个字符串是由单引号括起来的简单文本。

3、字符串的连接可以直接将字符串数组连接来实现。

例 2-10,字符串的连接。
在命令行窗口中输入:

U ='Hello,';
V =' world!';
W = [U V]
输出结果:
W =
Hello, world!

函数句柄

在 MATLAB 平台中,对函数的调用方法分为直接调用法和间接调用法。

l
直接调用函数
被调用的函数通常被称为子函数。但是子函数只能被与其 M 文件同名的主函数或在 M 文件中的其他函数所调用,同时在一个文件中只能有一个主函数。
l
而使用函数句柄对函数进行调用则避免了上述问题。函数句柄实际上提供了一种间接调用函数的方法。创建函数句柄需要用到操作符@。对 MATLAB 库函数中提供的各种 M 文件中的函数和使用者自主编写的程序中的内部函数,都可以创建函数句柄,从而可以通过函数句柄来实现对这些函数的间接调用。

创建函数句柄的一般句法格式为:

Function_Handle = @Function_Filename;其中,Function_Filename 是函数所对应的 M 文件的名称或 MATLAB 内部函数的名称。@是句柄创建操作符。Function_Handle 变量保存了这一函数句柄,并在后续的运算中作为数据流进行传递。
例如,F_Handle = @cos 就创建了 MATLAB 内部函数 cos 的句柄,并将其保存在 F_Handle
变量中,后续的运算过程中就可以通过 F_Handle(x)来实现 cos(x)的功能。

对于那些没有输入参数的函数,在使用句柄调用时,在句柄变量之后的圆括号中不填写变量名即可,即 F_Handle()。

二、数组与矩阵

三、MATLAB编程基础

四、数据可视化

1、图形绘制

在 MATLAB 中是无法画出真正的连续函数的,因此在实现连续函数的可视化时,首先必须将连续函数用在一组离散自变量上计算函数结果,然后将自变量数组和结果数组在图形中表示出来。

当然,这些离散的点还是不能表现函数的连续性的。为了更形象地表现函数的规律及其连续变化,通常采用以下两种方法:

(1)对离散区间进行更细的划分,逐步趋近函数的连续变化特性,直到达到视觉上的连续效果。

(2)把每两个离散点用直线连接,以每两个离散点之间的直线来近似表示两点间的函数特性。

图形绘制的基本步骤

(1)数据准备。主要工作是产生自变量采样向量,计算相应的函数值向量。
(2)选定图形窗口及子图位置。在默认情况下,MATLAB 系统绘制的图形为 figure.1、
figure.2……
(3)调用绘图函数绘制图形,例如 plot 函数。
(4)设置坐标轴的范围、刻度及坐标网格。
(5)利用对象属性值或者图形窗口工具栏设置线型、标记类型及其大小等。
(6)添加图形注释,例如图名、坐标名称、图例、文字说明等。
(7)图形的导出与打印。

2、二维图形绘制

MATLAB 基本的二维图形包括线型(Line Plots)、散点型(Scatter Plots)、条型(Bar Plots)、极坐标型(Polar Plots)及矢量图型(Vector Fields)等。

plot指令

该命令可以带有不同数目的参数。最简单的形式就是将数据传递给 plot,但是线条的类型和颜色可以通过使用字符串来指定,这里用 str表示。线条的默认类型是实线型。

基本规范

(1)plot 指令使用规范一:plot(x,y)
语句说明:以 x 为横坐标,y 为纵坐标,按照坐标(xj,yj)的有序排列绘制曲线。
(2)plot 指令使用规范二:plot(y)
语句说明:其中 y 为一维实数数组,以 1:n 为横坐标,yj 为纵坐标,绘制曲线(n 为 y的长度)。
(3)plot 指令使用规范三:plot(x,y,str)。
语句说明:用字符串 str 指定的颜色和线型对 y 绘制 x 的图形。
(4)plot 指令使用规范四:plot(x1,y1,str1, x2,y2,str2,…)。
语句说明:用字符串 str1 指定的颜色和线型对 y1 绘制 x1 的图形,用字符串 str2 指定的颜色和线型对 y2 绘制 x2 的图形……每组参数值可以采用上述除复数值以外的任何一种形式。str1,str2…可以省略,此时,MATLAB 自动为每条曲线选择颜色和线型。
(5)plot(z)。
语句说明:其中 z 为一维复数数组,以横轴为实轴,纵轴为虚轴,在复平面上绘制(real(zj),imag(zj))的有序集合的图形。
(6)plot(A)。
语句说明:绘制矩阵 A 的列对它的下标的图形。对于 m×n 的矩阵 A,有 n 个含有 m 个元素的数对,或是 n 条有 m 个点的曲线,且这 n 条曲线均采用颜色监视器上不同的颜色绘制而成。
(7)plot(x,A)。
语句说明:绘制矩阵 A 对向量 x 的图形。对 m×n 的矩阵 A 和长度为 m 的向量 x,绘制矩阵 A 的列对向量 x 的图形;如果 x 的长度为 n,则绘制矩阵 A 的行对向量 x 的图形。向量x 可以是行向量,也可以是列向量。
(8)plot(A,x)。
语句说明:对矩阵 A 绘制向量 x 的图形。对于一个 m×n 的矩阵 A 和一个长度为 m 的向量 x,对矩阵 A 的列绘制向量 x 的图形;如果 x 的长度为 n,则对矩阵 A 的行绘制向量 x的图形。向量 x 可以是行向量,也可以是列向量。
(9)plot(A,B)。
语句说明:对矩阵 A 的行绘制矩阵 B 的列的图形。如果 A 和 B 都是 m×n 的矩阵,则将绘制 n 条由 m 个有序对连成的曲线。

注意
1、输入参数为向量时,利用函数 plot 绘制多条曲线。

eg1

clear all                    %清空工作区变量
x=-pi:pi/10:pi;
y=[sin(x);sin(x+3);sin(x+5)];  %此处为向量
z=[cos(x);cos(x+3);cos(x+5)];
figure;                     %先绘制一个空图框
plot(x,y,'r:*',x,z,'g-.v'); %绘制多条曲线


eg2

clear all
t= (0:pi/100:pi)’;
y1=sin(t)*[1,-1];   %此处为向量,plot之后会绘出两条线
y2=sin(t).*sin(9*t);
t3=pi*(0:9)/9;
y3=sin(t3).*sin(9*t3);
plot(t,y1,'r:',t,y2,'b',t3,y3,'bo')
axis([0,pi,-1,1])  %axis函数控制x取值范围为 [0,pi];y取值范围为[-1,1]

figure指令

https://www.mathworks.com/help/releases/R2019b/matlab/ref/figure.html


语法
figure
figure(Name,Value)
f = figure(___)
figure(f)
figure(n)说明
figure 使用默认属性值创建一个新的图窗窗口。生成的图窗为当前图窗。figure(Name,Value) 使用一个或多个名称-值对组参数修改图窗的属性。例如,figure('Color','white') 将背景色设置为白色。f = figure(___) 返回 Figure 对象。可使用 f 在创建图窗后查询或修改其属性。figure(f) 将 f 指定的图窗作为当前图窗,并将其显示在其他所有图窗的上面。figure(n) 查找 Number 属性等于 n 的图窗,并将其作为当前图窗。如果不存在具有该属性值的图窗,MATLAB® 将创建一个新图窗并将其 Number 属性设置为 n。

xlim、ylim指令和axis指令

xlim和ylim指令主要用于控制绘图之后图的坐标轴范围。

绘制一个线条,并将 y 坐标轴范围设置为从 -2 至 2。x = linspace(0,10);
y = sin(x);
plot(x,y)
ylim([-2 2])

axis用于控制绘图后整个图属性的各种设置(坐标轴范围和纵横比等),里边也包括了x、y轴的范围值等属性值设置。

axis
设置坐标轴范围和纵横比语法
axis(limits)
axis style
axis mode
axis ydirection
axis visibility
lim = axis
[m,v,d] = axis('state')
___ = axis(ax,___)说明axis(limits) 指定当前坐标区的范围。以包含 4 个、6 个或 8 个元素的向量形式指定范围。axis style 使用预定义样式设置轴范围和尺度。例如,将样式指定为 equal 以便沿着每个坐标轴使用相等的数据单位长度。axis mode 设置 MATLAB® 是否自动选择范围。将模式指定为 manual、auto 或半自动选项之一,例如 'auto x'。axis ydirection,其中 ydirection 为 ij,即将原点放在坐标区的左上角。y 值按从上到下的顺序逐渐增加。ydirection 的默认值为 xy,即将原点放在左下角。y 值按从下到上的顺序逐渐增加。axis visibility,其中 visibility 为 off,即关闭坐标区背景的显示。而坐标区中的绘图仍会显示。visibility 的默认值为 on,即显示坐标区背景。lim = axis 返回当前坐标区的 x 轴和 y 坐标轴范围。对于三维坐标区,还会返回 z 坐标轴范围。对于极坐标区,它返回 theta 轴和 r 坐标轴范围。[m,v,d] = axis('state') 返回坐标轴范围选择、坐标区可见性和 y 轴方向的当前设置。在以后的版本中将会删除该语法。请改用坐标区的 XLimMode、YLimMode、ZLimMode、Visible 和 YDir 属性来获取这些值。___ = axis(ax,___) 使用 ax 指定的坐标区或极坐标区,而不是使用当前坐标区。指定 ax 作为上述任何语法的第一个输入参数。将字符向量类型的输入参数用单引号引起来,例如 axis(ax,'equal')。

3、三维图形绘制

五、句柄图形对象

句柄图形对象创建函数

daspect

控制沿每个轴的数据单位长度
aspect(ratio) 设置当前坐标区的数据纵横比。数据纵横比是沿 x 轴、y 轴和 z 轴的数据单位的相对长度。指定 ratio 为一个由正值组成的三元素向量,这些正值表示沿每个轴的数据单位的相对长度。例如,[1 2 3] 表示沿 x 轴从 0 到 1 的长度等于沿 y 轴从 0 到 2 的长度和沿 z 轴 0 到 3 的长度。若要在所有方向上采用相同的数据单位长度,请使用 [1 1 1]。

MATLABR2018自学一本通笔记相关推荐

  1. matlab完全自学一本通 pdf,matlab r2014a自学一本通 MATLAB R2014a完全自学一本通 中文pdf扫描版[125MB] 下载-脚本之家...

    MATLAB R2014a完全自学一本通面向MATLAB 的初中级读者,在介绍MATLAB R2014a 集成环境的基础上,对MATLAB 使用中常用的知识和工具进行了详细的介绍,书中各章均提供了大量 ...

  2. python微信公众号翻译功能_自学Python笔记:给微信公众号搭建“成绩查询”功能...

    原标题:自学Python笔记:给微信公众号搭建"成绩查询"功能 期末考试 临近年末,全国各地都在上演一场大戏<期末考试>,考完试无论什么样的结果总想尽快看到自己一个学期 ...

  3. 菜鸡自学 Python 笔记(二)

    菜鸡自学 Python 笔记(二) 五,结构与语句 1.选择结构-- if 语句 2.循环控制语句 (1)while 语句 (2)for 语句 (3)continue 语句与break 语句 六.列表 ...

  4. 前端自学HTML笔记之二【超链接】

    我已加入 1_bit 博主的免费前端 站起来 学习计划,专栏链接:https://blog.csdn.net/a757291228/category_11609526.html 前端自学HTML笔记二 ...

  5. MATLAB R2016a完全自学一本通PDF

    MATLAB R2016a完全自学一本通PDF下载地址: https://pan.baidu.com/s/1kb2L3C4XOjgiQhPR0ZaOWw: 密码:9twg; 资源全部收集于互联网,分享 ...

  6. 黑马程序员_java自学学习笔记(八)----网络编程

    黑马程序员_java自学学习笔记(八)----网络编程 android培训. java培训.期待与您交流! 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无 ...

  7. matlab16a使用教程,MATLAB R2016a完全自学一本通_IT教程网

    资源名称:MATLAB R2016a完全自学一本通 本书的特点: 由浅入深,循序渐进:本书以初.中级读者为对象,首先从MATLAB 的基础知识讲起,辅以MATLAB 在工程中的应用案例,帮助读者尽快掌 ...

  8. python中词云pic_path是什么_自学Python笔记:打造我的第一个词云

    原标题:自学Python笔记:打造我的第一个词云 两会词云 "词云"是对文本中出现频率较高的"关键词"予以视觉上的突出,形成"关键词云层"或 ...

  9. 前端自学学习笔记——ES5、ES6

    前端自学学习笔记--ES5.ES6 文章目录 前端自学学习笔记--ES5.ES6 1.面向过程与面向对象 1.1面向过程 1.2面向对象 1.3面向过程与面向对象对比 2.对象与类 2.1对象 2.1 ...

  10. FDTD Solutions自学整理笔记入门教程(3):监视器Monitors

    FDTD自学整理笔记入门教程之监视器(转载+改动) 3.监视器Monitors:(这个编辑器真的不方便,文字+图片的操作真是太麻烦了,为了方便就简单截图上传)

最新文章

  1. 网易云信音视频技术落地提速,读书郎电话手表成行业先锋
  2. Matlab---傅里叶变换---通俗理解(一)
  3. Linux下切换用户出现su: Authentication failure的解决办法
  4. 特洛伊木马脚本linux,手动查杀特洛伊木马
  5. HDU - 1495 - 非常可乐
  6. 巧为Win10家庭版开启组策略编辑器功能
  7. 在北京当 Python 程序员,能买起房吗?
  8. mybatis where、set、trim、sql、foreach标签的使用
  9. Codeforces Round #666 (Div. 2)D. Stoned Game(博弈问题)
  10. 【图的有向路径检查】程序员面试金典——4.2有向路径检查
  11. 问题四十三:对ray tracing圆环图形中的细微问题进行修正
  12. python安装scipy数次失败,之后安装Anaconda后使用sublime切换python解释器后解决pip无法安装scipy问题
  13. 图片超大 html,解决WebView加载html文本时,图片太大不能适配屏幕
  14. shp系列(四)——利用C++进行Shx文件的读(打开)
  15. 数学建模 —— 自回归模型
  16. php-screw 安装,liunx 下安装 php_screw 扩展 以及报错处理
  17. 如何设计过压保护电路?
  18. 为什么html中使用不了样式,css不起作用是什么原因?
  19. JavaFX开发教程——快速入门FX
  20. 2019春招宇视科技嵌入式面试

热门文章

  1. 财务自由的日子,我抑郁了
  2. 人工智能产品经理工作流程
  3. slk文件转换器安卓版_CoolUtils Total Excel Converter下载
  4. 微信小程序布局 左右结构简单例子
  5. 工程项目管理系统java程序,基于jsp的工程项目管理系统-JavaEE实现工程项目管理系统 - java项目源码...
  6. 容器监控实践—CAdvisor
  7. H5+CSS前端特效源代码:可旋转动态日文片假名
  8. java int转byte数组
  9. trados 有道api_在Trados中使用微软机器翻译
  10. IDEA 设置类注释模板