matlab基础语法
·
目录
基础命令
数据类型
==矩阵操作==
逻辑和流程控制
==二维平面绘图==
==三维立体绘图==
一、基础命令
- 清空环境变量和命令
clear all清除Workspace中的所有变量clc清除Command Window中的所有命令
二、数据类型
- 数字
- 可以直接加减乘除
- 字符和字符串
- 定义:
s='a',str='zifuchuan' abs(s),取ASCLL码char(65),取字符length(str),计算字符串长度
- 矩阵
- 定义:
A=[1 2 3;4 5 6;7 8 9] - 转置:
B=A',行列互换 - 按列输出矩阵:
C=A(:) - 求逆:
D=inv(A),方阵才可求逆 - 生成0矩阵:
E=zeros(10,5,3),十行五列三维0矩阵 - rand生成均匀分布的伪随机数,分布在(0,1)之间:
E(:,:,1)=rand(10,5)十行五列随机数 - randn生成标准正态分布的伪随机数,均值为0,方差为1:
E(:,:,2)=rand(10,5)十行五列随机数 - randi生成均匀分布的伪随机数:
E(:,:,3)=rand(5,10,5)十行五列随机数,最高值为5
- 元胞数组
- 定义:
A=cell(1,6),注意:matlab不同于c,matlab从1开始 - 赋值:
A{2}=eye(3)(eye是生成nn、对角线是1的单位矩阵),A{5}=magic(5)(magic是生成nn,主、副对角线、行、列相加都相等的幻方)
- 结构体
- 定义:
books=struct('name',{{'wangwu','liming'}},'price',[30,40]) - 输出:
books.name输出属性,books.name(1)输出cell,books.name{1}输出字符串
三、矩阵操作
- 矩阵的定义与巧构
B=1:2:9从1到9步长2的矩阵C=repmat(B,3,2)把B矩阵重复三行二列所得矩阵D=ones(2,4)生成2行4列,数值均为1的矩阵
- 矩阵的四则运算
C=A+B,一一相加,相减同理E=A*B,行数等于列数才可以F=A.*B,对应项相乘G=A/B,相当于A乘以B的逆,如果不是方阵用pinv()求伪逆即可H=A./B,对应项相除
- 矩阵的下标
B=A(2,3),取第二行第三列元素C=A(3,:),取第三行(列同理)[m,n]=find(A>20),找出A中大于20的索引值
四、逻辑和流程控制
- for循环结构
for 循环变量 = 初值:步长:终值(步长可以省略)
执行语句;
end
- while循环结构
while 条件表达式
执行语句;
end
- if分支结构
if 条件表达式
执行语句;
elseif 条件表达式
执行语句;
else
执行语句;
end
- switch分支结构
switch 表达式(数值或字符串)
case 字符或字符串1
语句1;
case 字符或字符串2
语句2;
otherwise
语句n;
end
五、二维平面绘图
- sin函数例子
x = 0:0.01:2*pi;
y = sin(x);
figure; %建立一个幕布
plot(x,y);%输出二维图像
title('y=sin(x)'); %命名
xlabel('x');
ylabel('sin(x)');
xlim([0 2*pi]); %限制
- 参数选择
- 颜色选项参数
- 线型选项参数
- 数据标记点选项参数
- 两线同图例子
x = 0:0.01:20;
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);
figure;
[AX,H1,H2] = plotyy(x,y1,x,y2,'plot');%同x轴输出二维图
set(get(AX(1),'Ylabel'),'String','Slow'); %命名,Ylabel不同于单线
set(get(AX(2),'Ylabel'),'String','Fast');
xlabel('Time');
title('Rates');
set(H1,'LineStyle','--'); %设置参数
set(H2,'LineStyle',':');
六、三维立体绘图
- 简单例子
t = 0:pi/50:10*pi;
plot3(sin(t),cos(t),t);
xlabel('sin(t)');
ylabel('cos(t)');
zlabel('t');
grid on; %加网格,还有:hold on,hold off等其他
axis square; %限制为正方形
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)