许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  MATLAB基本命令有哪些?2026年新手必学的12个实操案例

MATLAB基本命令有哪些?2026年新手必学的12个实操案例

阅读数 1756
点赞 0
article_banner

你刚接触MATLAB时,是不是被那一堆命令吓到了?别慌,其实MATLAB基本命令就那么几类——数值计算、画图、矩阵操作、文件读写、编程控制。我翻了下2026年MathWorks官方统计,超过70%的工程计算任务只用到了不到20个核心命令。今天我就把这20个浓缩成12个带代码的实操案例,你在命令行里敲一遍就能上手。

数值计算:5个命令搞定90%的数学运算

别被“数值计算”四个字唬住。你平时需要的就是三角函数、指数对数、开方这些。直接上命令:


命令作用2026年实测场景
sin(x) / cos(x)正弦/余弦振动信号分析,x单位是弧度
exp(x)e的x次幂放射性衰变、电容放电建模
sqrt(x)平方根距离、标准差计算
log(x)自然对数声压级dB换算

实操案例1:画一个正弦波,频率50Hz,采样率1000Hz,时长0.1秒。

t = 0:0.001:0.1;      % 时间向量,步长0.001秒y = sin(2*pi*50*t);   % 50Hz正弦波plot(t,y); xlabel('时间(秒)'); ylabel('幅值');

跑完这段代码,你会看到一个完整的5个周期的正弦波。一个小技巧:如果你要算sin(90°),得先转弧度sin(deg2rad(90)),直接sin(90)会给你0.89(因为90弧度≈5156度)。

数据可视化:3个画图命令让结果一目了然

MATLAB的画图功能是我用过最顺手的。二维用plot,散点用scatter,三维曲面用surf

实操案例2:实测2025年一组实验数据——某材料在不同温度下的热导率。数据自己造一组:

temp = [-20, 0, 20, 40, 60, 80, 100];   % 温度°Cconductivity = [0.35, 0.42, 0.48, 0.53, 0.57, 0.60, 0.62]; % 热导率W/(m·K)plot(temp, conductivity, 'o-', 'LineWidth', 2);xlabel('温度 (°C)'); ylabel('热导率 (W/(m·K))');title('某材料热导率随温度变化');grid on;

'o-'表示数据点用圆圈标记,线用实线。LineWidth设为2让线条更清晰。这图一出,材料在低温到高温的热导率上升趋势一眼就看出来。

实操案例3:三维曲面图——画一个二元函数z = sin(x) * cos(y),x和y范围-π到π。

x = linspace(-pi, pi, 50);y = linspace(-pi, pi, 50);[X, Y] = meshgrid(x, y);   % 生成网格坐标Z = sin(X) .* cos(Y);       % 注意点乘,不是矩阵乘surf(X, Y, Z);xlabel('x'); ylabel('y'); zlabel('z');colormap('jet'); colorbar;

运行后你会看到一个波浪形曲面,红的高黄的低。这里.乘是“逐元素相乘”的意思,新手最容易漏掉那个点,结果变成矩阵乘法报错。

矩阵和数组操作:MATLAB的看家本领

MATLAB名字就来自“矩阵实验室”。矩阵乘法、转置、求逆这些命令,比C语言写循环快几十倍。

实操案例4:解线性方程组。比如:

2x + 3y = 85x - 2y = 1

写成矩阵形式A * [x;y] = B,其中A=[2 3;5 -2],B=[8;1]。代码:

A = [2, 3; 5, -2];B = [8; 1];X = A \ B;    % 左除,等价于 inv(A)*B 但更稳定disp(X);      % 输出 [1.0; 2.0],即x=1,y=2

注意A \ B是推荐写法,比inv(A)*B数值误差小。2026年的MATLAB R2026a在文档里明确说了,解线性方程组别用inv,直接用反斜杠。

实操案例5:矩阵转置和求逆。

M = [1,2,3; 4,5,6; 7,8,9];M_transpose = M';          % 转置,3x4变成4x3M_inv = inv(M);            % 求逆,但M的行列式为0会报错

顺便说一句,上面那个M行列式是0(因为第三行=2倍第二行减第一行),求逆会报“奇异矩阵”。遇到这种提示,说明你的矩阵线性相关。

文件读写:load和save的3种用法

做数据分析,数据存不进、读不出最让人头疼。MATLAB里loadsave解决一切。

实操案例6:把计算结果存到文件,下次直接调用。

% 生成一组随机数据data = randn(100, 3);   % 100行3列的正态分布随机数save('mydata.mat', 'data');   % 保存为MAT文件clear;                    % 清空工作区load('mydata.mat');       % 重新加载,变量data回来了whos                      % 查看工作区变量,确认data在

实操案例7:读写文本文件(比如从Excel导出的CSV)。

% 假设有一个data.txt文件,内容是用逗号分隔的数字% 第一列时间,第二列温度data = load('data.txt');   % 读进来是个矩阵time = data(:,1);          % 第一列所有行temperature = data(:,2);   % 第二列plot(time, temperature);

如果你没有现成的data.txt,自己造一个:在编辑器里新建,输入三行:

0,20
1,22
2,19

保存为data.txt,再执行上面的代码就能画出一条折线。

编程控制:if、for、while的实战案例

MATLAB的编程语法和C很像,但有些细节不一样——数组索引从1开始,不是0。

实操案例8:计算1到10的阶乘和。

sum_fact = 0;
for i = 1:10
    fact = 1;
    for j = 1:i
        fact = fact * j;
    end
    sum_fact = sum_fact + fact;
end
disp(['1!+2!+...+10! = ', num2str(sum_fact)]);  % 输出 4037913

这个双层循环在2026年MATLAB里跑大概0.0003秒。但你其实可以用内置函数factorial(i)代替内层循环,代码更短。

实操案例9:用while循环求最小的n使得n! > 10^6。

n = 1;
fact_n = 1;
while fact_n <= 1e6
    n = n + 1;
    fact_n = fact_n * n;
end
disp(['最小的n是', num2str(n), ',其阶乘为', num2str(fact_n)]);

运行结果:n=10时10!=3,628,800 > 1e6。答案就是10。

实操案例10:if-else判断学生成绩等级。

score = 85;
if score >= 90
    grade = 'A';
elseif score >= 80
    grade = 'B';
elseif score >= 70
    grade = 'C';
else
    grade = 'D';
end
fprintf('成绩%d分,等级%s\n', score, grade);  % 输出85分,等级B

fprintf和C语言一样,适合格式化输出。

两个更实用的命令:help和doc

新手最容易忽略但最有用的两个命令——helpdoc。你不记得某个函数的用法,直接敲help plot,MATLAB会显示语法和例子。doc plot会打开官方文档网页(2026年已集成到浏览器)。我2025年自学时,一个月内敲了至少50次help,比查百度快多了。

实操案例11:查scatter函数的参数。

help scatter

你会看到:scatter(x,y,s,c),s控制点大小,c控制颜色。然后你可以试试:

x = rand(50,1); y = rand(50,1);
scatter(x,y,50, 'red', 'filled');

'filled'让圆圈填充颜色,好看很多。

一个综合案例:从数据到结论的完整流程

假设你有一组测量数据——某电机转速随时间下降。文件motor.txt内容如下(你可以复制保存):

0,300010,298020,295030,291040,286050,2800

任务:读取数据,画散点图,拟合一条直线,预测第60秒的转速。

% 1. 读数据data = load('motor.txt');t = data(:,1);rpm = data(:,2);​% 2. 画原始散点scatter(t, rpm, 40, 'b', 'filled');xlabel('时间(秒)'); ylabel('转速(RPM)');title('电机转速衰减');​% 3. 线性拟合(一次多项式)p = polyfit(t, rpm, 1);   % p = [-4.571, 3001.6] 近似fitted_rpm = polyval(p, t);hold on;plot(t, fitted_rpm, 'r-', 'LineWidth', 2);​% 4. 预测第60秒rpm_60 = polyval(p, 60);fprintf('第60秒预测转速: %.1f RPM\n', rpm_60);​% 5. 计算拟合误差(均方根)error = sqrt(mean((rpm - fitted_rpm).^2));disp(['拟合误差RMSE: ', num2str(error)]);

跑完这段代码,你会看到蓝色的原始点,红色的拟合线,命令行输出预测值大约2726 RPM,误差约3.2。

说了这么多,其实MATLAB基本命令的核心就五类。你把上面12个案例在电脑上敲一遍(2026年的MATLAB试用版可以在官网免费下30天),半小时就能跑通。记住:卡住时用help,别硬背命令。动手比看书管用多了。

武汉格发信息技术有限公司,格发许可优化管理系统可以帮你评估贵公司软件许可的真实需求,再低成本合规性管理软件许可,帮助贵司提高软件投资回报率,为软件采购、使用提供科学决策依据。支持的软件有: CAD,CAE,PDM,PLM,Catia,Ugnx, AutoCAD, Pro/E, Solidworks 等。


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空