Matlab入门笔记
clear 清除变量;
clc 擦黑板;
数据中的NaN代表非数,也就是不是数的意思。
matlab保留的keywords: (在命令行中输入iskeyword可打印)
以不同精度显示结果:
以long型显示(默认short): format long;
以科学计数法显示: format shortE;
行向量、列向量的输入:
行向量; a = [1 2 3 4];
列向量:a = [1;2;3;4]; 矩阵举一反三即可,列向量有行向量转置也可得。
A(1,2)即为A矩阵1行2列元素的值。
matlab输入等差数列:
A=[1:100] 从1到100的行向量。
A=[1:2:99] 2即为等差值,表示 1 3 5 7 9...99这个等差数列。
也可以混合用输入为一个矩阵,也可以对字符进行操作:
对矩阵进行操作,包括删除某一行列、增广矩阵等:一定要注意维数
冒号:代表全部的意思
A(3,:) 表示A矩阵的第三行全部元素,同样的,A(:,3)表示A矩阵第三列的全部元素。
要删除矩阵的,某一行或者某一列时,执行 A(3,:)=[ ] 即表示将A矩阵的第三行抹去。
A(3:5,:)表示删除A的3-5行矩阵元素。
矩阵点乘点除运算操作:
点乘(.*)、点除(./)一定要维数相同的矩阵才可以进行操作,因为它是对对应元素的乘除操作。
矩阵和某一个数的运算操作:
A为一个矩阵,a = 2,那么有
分别表示对矩阵A中每一个元素加2、除2;x4和x5是不一样的,x4是A * A,x5才是对A矩阵的每一个元素进行平方操作,此处要注意;C是A矩阵的转置。
特殊的矩阵:
eye(n) 表示n维的单位矩阵;
zeros(m,n) 表示m*n的零矩阵;
diag() 表示对角线矩阵;例如 A = diag( [1 2 3 4] )即表示为对角线为1 2 3 4的对角阵;
矩阵相关的一些函数:
max(A) 表示输出各列的最大值;是一个行向量;
max(max(A)) 表示输出A矩阵中的最大值; 同理有min的用法;
sum(A) 和max一样,表示输出各列之和;是一个行向量;
sum(sum(A)) 表示A矩阵各个元素之和;
mean() 不赘述,与sum的用法是一样的;
sort(A) 表示对A矩阵的每一列按从小到大的顺序由上到下排列,得到的还是一个矩阵;
sortrows(A) 表示对每一行进行排序,标准是第一列各元素的大小,整行整行调整的。
size(A) 显示矩阵的维数,是几乘几的维数;
length(V) 指的是向量的长度,不是矩阵的,此处要注意;
find( A == 5) 用于寻找矩阵A中元素5在哪个位置;
脚本的编写:
编写脚本的过程中要会利用工具栏的注释;
操作技巧:用选择区块,然后利用运行指定区块的内容;
代码风格很重要,要清晰易读,Ctrl+A全选然后ctrl+i自动排齐。
常用关键词:
程序编写小技巧:
当A矩阵特别大,编写起来比较长时,有可能会使用到换行键,此时可以如此表达:即加...然后换行即可。
自己写函数function的时候:
基础绘图:
一般matlab在绘制新图的时候会将原图覆盖掉,如果我们要在原图的基础上加绘某些内容,需要用到hold on命令,加绘完成后键入hold off。
plot style:具体的使用方法查看帮助linespec
例如:
基础绘图中的一些设置方法:
设置图例legend:使用关键字然后依次设置即可
添加x、y的lable以及标题title:
在图内设置text以及箭头标示:
下图中每一个关键字都很常用,需要搞清楚;
line就是为了画出从[2,2]到[0,2^2*sin(2)]的垂直线来;
x为(0,3)均匀分布,linspace(-5,5,100)表示一个均匀分布在(-5,5)上的包含100个元素的向量,但是在xlable上并不一定会全部显示出来。
图像微调:
设置x、y的limit,弄清楚是gca还是gcf
设置坐标轴字体大小、xtick、xlable等等:
XTick与XTickLabel是一起使用的,在XTick中就要设置好间隔,在XTickLabel中进行更换:比如,在05-11年N方向画时间序列的时候(6年大约有2100个数据):
matlab保存高清图片:
print('hisfitPlot', '-dpng', '-r600') -r600就足够了。
matlab绘图:要用来做什么?
plot命令:(plot命令中有详解)
plot(x,y,'o',xx,yy,'*'); 同时画出(x,y)和(xx,yy)两条曲线。