MATLAB基础语法与图形绘制
MATLAB是美国MathWorks公司出品的商业数学软件,用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。
由此可见,MATLAB是一个非常强大的数学软件,对于学生阶段而言,通常用与数学建模等相关比赛中对数学问题的处理。
本节内容概览如下:
MATLAB基础语法
常用设置
1.查阅文档doc “你要查阅的内容”
比如:doc imshow
会弹出imshow的解释窗口
2.显示图片,
RGB=imread(“pepees.png”);%将文件(双引号内输入文件路径",这里是当前路径),将图片读入到对象RGB中
I=rgb2gray(RGB);%改变图像的颜色为灰色
imshow(I);%显示图片
3.添加搜索路径
如果说你想要直接调用某个函数或者使用某个脚本(.m)文件,但这个文件不在当前目录下,而你又不想输入全部路径(因为这样会很麻烦),此时可以点击“主页”
在主页的“设置路径”中
点击“添加文件夹”,此时会弹出文件管理目录,在目录中选择你要添加的脚本或文件夹即可,然后点击“保存”,此时,这个文件或文件夹会列入到matlab的搜索目录中,你便可以直接使用该文件。
基础语法
交互函数input 和 disp
1.input()
1.1常用格式input(‘你要输入的内容:’);
1.2将输入的内容赋给某个变量比如,将输入的字符串赋给变量str
str=input(‘输入一个字符串:’,‘s’);
%后边的‘s’是指输入内容的类型为字符串类型。
2.disp()
2.1常用格式:disp(‘你要输出的内容’);
disp(a);%a是一个已经被赋值的变量
2.2当需要输出多个内容时,使用中括号‘[]’括起来,
disp([‘你的名字叫做:’,name]);%name是一个变量名
逻辑运算与或非
“与” & 例如:1&2=1,2&0=0
“或” | 例如: 1|2 =1 ,2|0=0
“非” ~ 例如:~1=0
注释快捷键
注释:选中你要注释的内容,ctrl(唱跳rap篮球)+R
取消注释:选中你要取消注释的内容,ctrl+T
断点调试
在行号后边单击鼠标左键添加断点,
可以通过点击运行并前进逐步运行,每次会运行一个断点到另个断点之间的程序,中间的交互函数需要用户进行手动输入。
函数
当有某个功能常常用到时,可以将该功能的封装成一个函数,需要注意的是,MATLAB与C语言的函数定义不同,MATLAB需要新建一个.m文件将函数单独封装起来,新建.m文件后,输入函数统一的定义格式:
function d(返回值)=add(函数名)(a,b,c(参数1,参数2…参数n))
%需要执行的操作
d=a+b+c;
定义好函数之后,将对应的函数文件放在与主程序相同的目录下,或者是添加路径到MATLAB的搜索目录中即可调用函数。
图形绘制
变量级命名规则:
1 使用字母开头
2.预定义变量:
2.1 pi表示3.1415926…
2.2 ans表示答案
2.3 eps返回从1到下一个更大的双精度数的距离
冒号表达式:生成相同间隔的一组数据
1.生成默认间隔为1的10个数据:a=1:10;
2.生成间隔为0.1的多个数据,c=1:0.1:10;
3.可以逆序,间隔也可以为负数:c=10 : -1 :1;(这个为啥打-1会出现👎?)
二维图形绘制
图形绘制plot()
0.基本格式:plot(x,y)
x表示横坐标向量,y表示纵坐标向量
1plot中只有一个参数x,并且这个参数x是一个向量
1.1当只有向量x时,及plot(x)
x向量的各个值会被作为纵坐标的值,横坐标的值默认为1,2,3,4…
1.2当向量x是矩阵时,
会以列作为单位,绘制出(列数)条曲线,横坐标认为默认值
2.plot()中有两个参数x和y,
2.1x,y都为向量,plot(x,y)那就按照x为横坐标,y为纵坐标绘图,
2.2x,y都为矩阵,那就按照x,y分别以列作为单位x的每一列为横坐标,y的每一列为纵坐标,绘制多个图像。
3.当只有一个参数X并且X为复数时,那么复数X的实部为横坐标,X的虚部为纵坐标.
添加标题等在图形上添加信息的操作
1.添加标题
xlabel(‘正弦函数’);在横轴上添加标题
xlabel({‘正弦函数’,‘sin’};//在横轴上分行添加标题
xlabel(‘正弦函数,sin’);//显示在同一行,sin在正弦函数的后边
2.更改曲线的颜色和样式:
plot(x,y,‘r–’);
将曲线改成红色虚线,
其他的具体修改格式请参考下表
3.增加图形,就是在一个图形上继续绘制其他图形,使用hold on(打开图形保持)语句即可:
plot(x1,y1’r–');
hold on;
plot(x2,y2,‘b–’);
否则后边的图形将会把前一个图形覆盖掉
4.发布:可以将内容提炼成html文件可以被保存
三维图形绘制
1 球坐标转换为普通坐标:
x=rho.*sin(sita).*cos(phi);
y=rho.*sin(sita).*sin(phi);
z=rho.*cos(sita);
2.常用绘图plot(x,y,z,‘格式设置’),同二维绘图类似,
极坐标绘图
1.常用格式:polar(sita,rho);