MATLAB基础篇(下)

news/2024/10/17 18:28:27/

本文为MATLAB基础篇(上)的后续。


 二、 MATLAB基本语法

7、基本绘图方法

Ⅰ、 MATLAB绘图的一般步骤

  1. 对数轴进行采样
  2. 对采样点计算相应的函数值, 得到平面(或空间)上的点的数据
  3. 运用绘图命令将数据进行图形化显示
x=-1:0.01:1;
%对数轴进行采样y=sin(1./x);
%对每一个采样点, 计算对应的函数值plot(x,y);
%将x,y表示的平面上的点用直线段连接起来

画出y=sin(1/x), x∈[-1,1]的图形,如下:

 Ⅱ、线型、点型和颜色

使用格式: plot(x,y,'绘图参数')

plot(x,y,'*b');  %点型为*,  颜色为蓝色
plot(x,y,':g');  %线型为虚线, 颜色为绿色
plot(x,y,'+-r');  %点型为+,线型为实线, 颜色为红色

                                                                     MATLAB绘图参数表

线型

说明

点型号

说明

颜色

说明

-

实线(默认)

+

加号符

r

红色

--

双划线

o

空心圆

g

绿色

:

虚线

*

星号

b

蓝色

:.

点划线

.

实心圆

c

青绿色

 

 

x

叉号符

m

洋红色

 

 

s

正方形

y

黄色

 

 

d

菱形

k

黑色

 

 

^

上三角形

w

白色

 

 

v

下三角形

 

 

 

 

>

右三角形

 

 

 

 

<

左三角形

 

 

 

 

p

五角星

 

 

 

 

h

六边形

 

 

 Ⅲ、多条曲线的绘制

有多种方法在一张图上显示多条曲线, 这里介绍两种方法

(1)用plot(x1,y1,x2,y2,…)命令

t=0:0.5:4*pi;
y=exp(-0.1*t).*sin(t);
y1=exp(-0.1*t).*sin(t+1);
plot(t,y,t,y1);

 (2)用hold on命令

在执行一次绘图命令合, 使用hold on命令保持当前画板, 使得后面绘制的图形在当前画板上.

t=0:0.5:4*pi;
y=exp(-0.1*t).*sin(t);
y1=exp(-0.1*t).*sin(t+1);
plot(t,y);
hold on
plot(t,y1);
hold off

 Ⅳ、三维曲线和曲面

(1)绘制三维曲线

格式: plot3(x,y,z)

z=0:0.1:4*pi;
x=cos(z);
y=sin(z);
plot3(x,y,z);

 (2) 绘制三维曲面

步骤:

  1. 分别对x,y轴进行采样;
  2. 生成x-y平面网格;
  3. 计算网格点对应的z值;
  4. 用三维曲面绘图命令绘图
x=-8:0.5:8;
y=-8:0.5:8;
[X,Y] = meshgrid(x,y);
R = sqrt(X.^2+Y.^2)+eps;            
Z = sin(R)./R;
mesh(X,Y,Z);

注:在上述公式中,eps是一个非常小的数,通常被称为“机器精度”(machine epsilon)。它用于避免在计算机程序中出现除以零的错误 

                                               常用绘图命令

plot

线性X-Y坐标绘图

legend

标注图例

axis

控制坐标轴比例和外观

plot3

三维曲线作图

hold on

保持当前画板

meshgrid

生成网格

hold off

释放当前画板

mesh

三维曲面作图

title

标题

surf

三维曲面作图

xlabel

X轴标注

meshc

加等高线的三维曲面作图

ylabel

Y轴标注

surfc

加等高线的三维曲面作图

textt

在图上标文字

contour

平面等高线

grid on

图上加坐标网格

contour3

三维等高线

grid off

去掉网格

subplot

子图

8、逻辑运算

MATLAB的逻辑值有真(TRUE)和假(FALSE), 可以通过逻辑表达式或直接输入得到. 输入和显示时用0表示逻辑假, 1表示逻辑真. 浮点数和逻辑值可以互相转换.

                                                    浮点数与逻辑值的相互转换

                           

                                                      关系运算及逻辑运算符

 

符号

意义

符号

意义

符号

意义

>

大于

<

小于

>=

大于或等于

<=

小于或等于

==

等于

~=

不等于

&

逻辑与

|

逻辑或

~

逻辑非

&&

逻辑与(短路)

||

逻辑或(短路)

xor

逻辑异或

A=[0 0 1 1]
B=[0 1 0 1]A&B                 与                              
A|B                 或
~A                  非
xor(A, B)         异或
G=magic(6)        魔方矩阵
rem(G,2)          G的元素整除2的余数
p=(rem(G, 3)==0)     判断元素是否是0
u=p|~p            两个逻辑数组对应元素进行运算得到:
A =0     0     1     1B =0     1     0     1ans =1×4 logical 数组0   0   0   1ans =1×4 logical 数组0   1   1   1ans =1×4 logical 数组1   1   0   0ans =1×4 logical 数组0   1   1   0G =35     1     6    26    19    243    32     7    21    23    2531     9     2    22    27    208    28    33    17    10    1530     5    34    12    14    164    36    29    13    18    11ans =1     1     0     0     1     01     0     1     1     1     11     1     0     0     1     00     0     1     1     0     10     1     0     0     0     00     0     1     1     0     1p =6×6 logical 数组0   0   1   0   0   11   0   0   1   0   00   1   0   0   1   00   0   1   0   0   11   0   0   1   0   00   1   0   0   1   0u =6×6 logical 数组1   1   1   1   1   11   1   1   1   1   11   1   1   1   1   11   1   1   1   1   11   1   1   1   1   11   1   1   1   1   1

 魔方阵是一个矩阵,其中每行、每列以及对角线上的所有元素之和都相等。请注意,魔方阵只能在方阵(即行数等于列数)中生成。在生成魔方阵时,算法会优化使得每行、每列和对角线之和都相等。这使得生成的魔方阵在数学和游戏等领域具有一些特殊的性质和用途。

A = rand(4,4)
B = A<0.5
C = A(B)
R = find(A<0.5)
得到:
A =0.7094    0.6551    0.9597    0.75130.7547    0.1626    0.3404    0.25510.2760    0.1190    0.5853    0.50600.6797    0.4984    0.2238    0.6991B =4×4 logical 数组0   0   0   00   1   1   11   1   0   00   1   1   0C =0.27600.16260.11900.49840.34040.22380.2551R =3678101214

9、流程控制语句

(1)if语句

格式一:

if (表达式)

语句组A;

end

格式二:

if (表达式1)

    语句组A;

else

    语句组B;

end

格式三:

if (表达式1)

    语句组A;

elseif (表达式2)

    语句组B;

else   

    语句组C;

end

(2) while语句

格式:

while  (表达式)

  语句组;

end

举例:求MATLAB相对精度,y不断减小,直至MATLAB分不出1+y与1的差别为止。

y=1;
while (1+y)>1y1=y;y=y/2;
end
y1 
得到:
y1 =2.2204e-16

(3) for语句

格式:

for k= 初值:增量:终值

    语句组;

end

举例:显示三角函数表

for x=0:0.1:pi/4disp([x, sin(x), cos(x), tan(x)])
end
得到:0     0     1     00.1000    0.0998    0.9950    0.10030.2000    0.1987    0.9801    0.20270.3000    0.2955    0.9553    0.30930.4000    0.3894    0.9211    0.42280.5000    0.4794    0.8776    0.54630.6000    0.5646    0.8253    0.68410.7000    0.6442    0.7648    0.8423

10、M程序及M函数

  • MATLAB的程序通常用后缀名为m的文本文件来保存, 所以 可以用任何文字编辑工具来创建和编写.  MATLAB程序可直接调用M文件并执行.
  • M文件分为两种: 一种是M程序, 为用户解决特定的问题编制的, 可以独立执行;另一种是M函数, 用来完成相对独立的子功能, 不能独立执行.  MATLAB软件的大部分功能是来自其建立的函数集.
  • 在MATLAB中创建M程序和M函数的方法是相同的. 点击菜单“File→New → M-File”, 打开文本编辑器, 程序编写完成后, 点击 按纽         即可执行.  程序的输出结果在命令窗口.
  • 通常用户建立的M程序和M函数存放在当前目录中, MATLAB可以自动搜索到.

(1) M程序

M程序特征:

由一般语句组成, 程序中的变量是全局的, 可以在MATLAB命令窗口输入文件名来执行.

举例:

%列出一个求fibonnaci数的程序, 它是一个数列, 从[1,1]开始, 由数列的最后两个元素之和生成新的元素, 依次递推f=[1,1]; 
i=1;
N=10;
while f(i)+f(i+1)<N  %循环条件检验f(i+2)=f(i+1)+f(i); %求fibonnaci数的算式i=i+1;  
end
f
得到:
f =1     1     2     3     5     8

 (2) M函数

M函数特征:

  1. 由function起头, 后面跟的函数名, 函数名必须与文件名相同.
  2. 有输入输出变量, 可以进行变量传递.
  3. 除非用global声明, 程序中的变量均为局部变量, 不保存在工作空间中.
  4. M函数不能独立运行, 必须由其它程序调用.

一般格式:function y=FunctionName(x)

举例:

%求fibonnaci数的函数
function f = fib(n)
if n <= 2f = 1;
elsef = fib(n-1) + fib(n-2);
end


http://www.ppmy.cn/news/735074.html

相关文章

对话小红书剑寒:如何跨方向技术融合,全局优化打造更智能的音视频系统?...

编者按&#xff1a;在 AI 时代&#xff0c;随着 ChatGPT 掀起技术狂潮&#xff0c;构建更智能的音视频系统已经成为音视频领域从业者的共同目标。 然而&#xff0c;音视频系统的智能化&#xff0c;每个从业者对其都有自己独特的视角和理解&#xff0c;正如“一千个人眼中有一千…

电脑开机了但黑屏怎么办?

长按钮“开机按钮”直到电脑关闭&#xff0c;缓一会儿之后重新开机。

电脑黑屏的问题

问题&#xff1a;工作站在启动虚拟机后会突然黑屏重启&#xff0c;有的时候偶尔用着用着会自己关机。 个人方法总结&#xff0c;参考使用。 参考解决情况&#xff1a; 内存条问题一般出现蓝屏。 黑屏考虑以下情况&#xff1a; 1.过热导致&#xff1a;机箱问题&#xff0c;…

电脑经常黑屏死机是什么原因?

电脑医院&#xff1a;光驱挑盘是光驱的常见故障&#xff0c;造成此故障的原因有很多&#xff0c;具体的解决方法如下&#xff1a;先将光驱拆开&#xff0c;检查光驱主导电机的工作状况&#xff0c;如果主导电机无工作&#xff0c;就应该检查一下主导电机的电源供给是否正常、电…

电脑经常黑屏是什么原因?

电脑经常黑屏是什么原因&#xff1f; 电脑经常黑屏是什么原因&#xff0c;我换了两个显卡&#xff0c;都会出现这样的问题&#xff0c;主机发热好像很高&#xff0c;热有异味的热空气从主机冒出来&#xff0c;打开看又没有什么地方烧坏&#xff0c;特别是在看视频电影的时候&am…

单片机黑屏怎么回事儿_电脑为什么总是黑屏

如果在不操作的情况下自动关机&#xff0c;可能是设置的问题。右击桌面选属性/屏幕保护程序/电源/电源使用方案。1、点下拉列表选&#xff1a;“家用/办公桌”将关闭监视器、关闭硬盘、系统待机、这三个内容的列表中设置为“从不”按应用。2、点下拉列表选&#xff1a;“演示”…

计算机黑屏故障的原因及解决方法,电脑黑屏原因及解决方法

电脑黑屏原因及解决方法 导语:当电脑发生黑屏时往往是什么原因引起的呢?我们如何进行解决呢?下面是小编给大家提供的电脑黑屏原因及解决方法,大家可以参考阅读,更多详情请关注应届毕业生考试网。 电脑黑屏原因:软件篇 一、硬件加速设置过高 硬件加速可以使得要处理大量图…

修复计算机黑屏,电脑黑屏的原因,教您如何修复电脑黑屏问题

电脑黑屏修复在我们生活中非常常见&#xff0c;使用简单、方便&#xff0c;为了电脑黑屏修复&#xff0c;今天推荐给大家的电脑黑屏修复&#xff0c;操作简单&#xff0c;适用于绝大部分用户使用 电脑黑屏的原因该怎么办?无法正常使用,总不能放着作废吧?今天小编将教给大家解…