零基础入门Matlab(一篇两个小时就能学完的入门博客) |
您所在的位置:网站首页 › matlab初学者易犯错误 › 零基础入门Matlab(一篇两个小时就能学完的入门博客) |
目录
零基础入门matlab前言1.界面认识2.变量命名3.数据类型4.元胞数组和结构体5.矩阵操作6.程序结构7.基本绘图操作7.1.二维平面绘图7.2.三维立体绘图
8.图形的保存与导出9.补充
零基础入门matlab
前言
这篇文章很适合MATLAB的入门学习,这也是我在入门时学习的笔记。 虽然说是”零基础“入门matlab,但是如果有其它编程语言基础的话,学起来自然会更轻松。 特别鸣谢:B站UP主——爱研究的小阿楠 1.界面认识注:Matlab中的注释 %% 独占一行的注释(有上下横线分割) % 普通注释 1)清空环境变量及命令 clear all 清除Workspace中的所有变量(右侧工作区) clc 清除Command Window中的所有命令(命令行窗口) 2)变量命名规则 ①变量名区分大小写 ②变量名长度不超过63位(hhh,不会有人把变量名弄这么长吧~) ③变量名简洁明了,尽量做到见名知意 3.数据类型1)数字 2 + 4 10-7 3*5 8/2 2)字符与字符串 s = ‘a’ (单引号表示字符串) ==abs(s)==ASCII码 char(97) 输出 a (ASCII码转字符串) num2str(65) 输出数字65 str=‘I love MATLAB & Machine Learning’ length(str) 字符串长度 doc num2str 3)矩阵(Matlab最NB的东西) A = [1 2 3; 4 5 2; 3 2 7]
D = inv(A) 逆矩阵(必须时方阵才能求逆矩阵) 执行下面两条语句 D = inv(A) (求逆矩阵) A * D (相当于A×A的逆)
E(:,:,1) = rand(10,5) rand生成均匀分布的伪随机数。分布在(0~1)之间 主要语法:rand(m,n)生成m行n列的均匀分布的伪随机数 rand(m,n,‘double’)生成指定精度的均匀分布的伪随机数,参数还可以是’single’ rand(RandStream,m,n)利用指定的RandStream(随机种子)生成伪随机数 E(:,:,2) = randi(5,10,5) randi生成均匀分布的伪随机数 主要语法:randi(iMax)在开区间(0,iMax)生成均匀分布的伪随机数 randi(iMax,m,n)在开区间(0,iMax)生成mXn型随机矩阵 r = randi([iMin,iMax],m,n)在开区间(iMin,iMax)生成mXn型随机矩阵 E(:,:,3) = randn(10,5) randn生成标准正态分布的伪随机数(均值为0,方差为1) 主要语法:和上面一样
元胞数组:是MATLAB中特有的一种数据类型,是数组的一种,其内部元素可以是属于不同的布局类型,概念理解上,可以认为它和C语言里面的结构体、C++里面的对象很类似。元胞数组是MATLAB中的特色数据类型,它不同于其它数据类型(如字符型,字符数组或者字符串,以及一般的算数数据和数组)。它特有的存取数据方法决定了它的特点,它有给人一种查询信息的感觉,可以逐渐追踪一直到所有的变量全部翻译成基本数据信息。它的class函数输出就是cell(细胞) %元胞数组 A = cell(1,6) A{2} = eye(3) %2021版本前的matlab下标从1开始 A{5} = magic(5) B = A{5}注:magic:字面意思是魔方,魔术的意思。在MATLAB中用来生成n阶幻方。比如三阶幻方就是1-9九个数字,组成一个3*3的矩阵,使得该矩阵无论横、竖还是斜三个方向上的三个数的和总是相同的。幻方是一个很古老的问题,试一下就知道了! 结构体 %结构体 books = struct('name',{{'Machine Learning','Data Mining'}},'price',[30,40]) books.name %属性 books.name(1) books.name{1}1)矩阵的定义与构造 A = [1,2,3,4,5,6,5,4,6] B = 1:2:9 %第二个参数为步长,不可缺省 B = 1:3:9 C = repmat(B,3,2) %重复执行3行2列 D = ones(2,4) %生成一个2行4列的全1矩阵2)矩阵的四则运算 A = [1 2 3 4; 5 6 7 8] B = [1 1 2 2; 2 2 1 1] C = A + B D = A - B E = A * B' F = A .* B % .*表示对应项相乘 G = A / B %相当于A*B的逆 G*B = A G*B*pinv(B) = A*pinv(B) G = A*pinv(B),相当于A乘B H = A ./ B % ./表示对应项相除3)矩阵的下标 A = magic(5) B = A(2,3) C = A(3,:) % :为取全部,那么这条语句表示取第三行 D = A(:,4) %取第四列 [m,n] = find(A > 20) %找到大于20的序号值/矩阵 %取的是索引值
如果直接用截图的方式截取matlab生成的图像,会影响图像的清晰度。因此我们建议:可以用如下方法保存与导出图形。 1)如图 2)编辑→复制选项 可调节相应元素 3)编辑→图窗属性 4)文件→导出设置 通过调节宽度、高度等像素值属性,可以让图片即使很小,文字依然清晰。 Matlab基础的部分到这就结束了,下面作一点补充~ 9.补充 [x,y,z] = peaks(30); %peaks命令用于产生双峰函数或者是用双峰函数绘图 mesh(x,y,z) grid
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |