MATLAB基础学习

MATLAB基础学习

刚接触MATLAB,写了个脚本。好久没写东西了,总结下知识点。

1、Matlab绘图的基本命令

  • figure():这是Matlab用于创建绘图的函数。

    figure(4)          
    subplot(2,2,1);     
    % subplot(x,y,n)x表示显示图片的行数,y表示列数,n表示第几幅图片
    
  • plot():这是Matlab中使用最为广泛的绘图函数,能够绘制散点图、曲线图等。

  • imagesc():这是Matlab中用来绘制热力图的函数。

  • fill():这是Matlab中用于标记并绘制区域的函数。

2、对数组中某一行/列进行排序

  • sort(array,1); 表示对矩阵array中每一列的值升序排列;
  • sort(array,2); 表示对矩阵array中每一行的值升序排列;
  • sortrows(array,1); 表示对矩阵按第一列升序排列;
  • sortrows(array,2); 似乎是将第一行放在末尾行,其他行依次上升一行
    在这里插入图片描述

3、提取某一 行/列 符合 等于/大于/小于 某个值的全部 列/行

提取Y1中第二列中大于0的所有行

Y1 = Y1(Y1(:,2) > 0,:);

提取Y1中第二行中大于0的所有列

Y1 = Y1(:,Y1(2,:) > 0);

4、矩阵合并

P=[A,B]

A,B俩矩阵左右合并(A,B行数一致)

P=[A;B]

A,B俩矩阵上下合并(A,B列数一致)

5、取整函数

  1. floor :向小取整
  2. round :四舍五入
  3. ceil :向大取整
  4. fix :向零取整

6、1 :1:10 和 10 :-1:1

分别是产生一个间隔为一,从一到十,从十到一的向量

7、对矩阵的某一列进行 乘除运算

Y1 = Y1(:,1)*10;%错误,这样结果是所有元素都乘10
Y1(:,1) = Y1(:,1)*10;
%  .*和*在这里似乎没有区别,至少结果一样

8、基本矩阵

  • ones()函数:产生全为1的矩阵,ones(n):产生nn维的全1矩阵,ones(m,n):产生mn维的全1矩阵;
  • zeros()函数:产生全为0的矩阵;
  • rand()函数:产生在(0,1)区间均匀分布的随机阵;
  • eye()函数:产生单位阵;
  • randn()函数:产生均值为0,方差为1的标准正态分布随机矩阵。

9、矩阵行列转换

将所有行全部转换为一列

在这里插入图片描述

第三列与第一列交换

在这里插入图片描述

下面是将上面的a的第1行与第3行互换
在这里插入图片描述

10、heatmap

xvalue = 1:countX;
yvalue = ceil(max(Y)-floor(min(Y))) :-0.5:1;
h = heatmap(xvalue,yvalue,countArray);
h.Title = 'VelForward - RightDistance';
h.XLabel = 'VelForward 单位:Km/h';
h.YLabel = 'RightDistance 单位:m';

参考链接

https://blog.csdn.net/lsg32/article/details/8560740
https://blog.csdn.net/zengxiantao1994/article/details/70177996
https://blog.csdn.net/sdgihshdv/article/details/77417452
https://blog.csdn.net/island_chenyanyu/article/details/100919614
https://blog.csdn.net/qq_45152779/article/details/106729969

猜你喜欢

转载自blog.csdn.net/qq_41661878/article/details/115113486