2018-04-10快捷键

1.点击ctrl+R,注释程序;可多次点击,多次注释同一次选中的代码;

点击ctrl+T,取消注释程序。

2.f(:,1)表示选中矩阵f的第一列的全部元素。

a:b表示在该维(Dimension,行或列等)选中从a到b的元素,如果只有一个冒号,就代表全部选中。

比如f(3:5,1)代表选中f第一列的第三个到第五个元素。

3.zeros函数——生成零矩阵

ones函数——生成全1阵

【zeros的使用方法】

B=zeros(n):生成n×n全零阵。

B=zeros(m,n):生成m×n全零阵。

B=zeros([m n]):生成m×n全零阵。

B=zeros(d1,d2,d3……):生成d1×d2×d3×……全零阵或数组。

B=zeros([d1 d2 d3……]):生成d1×d2×d3×……全零阵或数组。

B=zeros(size(A)):生成与矩阵A相同大小的全零阵。

【ones的使用方法】

ones的使用方法与zeros的使用方法类似。

4.指令for i=1:1:100与for i=1:100完全一样,步长为1的循环。

5.MATLAB中的round函数

调用格式:Y = round(X)  在matlab中round也是一个四舍五入函数。在matlab的命令窗口中输入doc round或者helpround即可获得该函数的相关帮助信息。

6.axis OFF

关闭所用坐标轴上的标记、格栅和单位标记。但保留由text和gtext设置的对象

axis ON

显示坐标轴上的标记、单位和格栅。

7.

xlabel('正弦函数')


8.MATLAB中gcf、gca、gco的区别

http://wenku.baidu.com/link?url=YFQL9yqtan1sR4vCmTQ3wgCDMICjK2O05EUdnk4yxyustakl_PNWI6IPovR_D5RekbUkbMKQ7-RiVDY2u9ToV4iF99SdHbsrjKTg3W22dLe  具体解析



图形对象

gcf 返回当前Figure对象的句柄值

gca返回当前d句柄值

gco返回当前鼠标单击的句柄值,该对象可以是除root对象外的 任意图形对象,并且Matlab会把当前图形对象的句柄值存放在Figure的CurrentObject属性中

Axes对象的属性

(1)title('new','color','r');给坐标轴命名为new,红色

title({'this title','has 2 '});命名为两行的标题

(2)Units:有效值为pixels/normalized/inches /centimeters/points/characters

决定各种位置属性的度量单位,相对于窗口左下角为基准。当设置为Pixels时, 以像素为单位;当设置为normalized时,以坐标为单位,屏幕的左下角为[0,0],右上角为[1.0,1.0]。

(3)grid on:在图像中显示网格。

(4)children:控制axes对象的子对象,即image\light\line\patch \rectangle\surface和text等对象,可通过get(gca,'children')来返回当前坐标轴的子对象构成的句柄值向量。

(5) 字体属性:

Fontangle字体角度(正常normal或斜体italic/oblique)

Fontname字体名称

fontsize 字体大小(单位由Fontunits决定)

fontunits字体单位(points/normalized/inches /centimeters/pixels)

fontweight字体粗细(normal/bold/light/demi)

gridlinestyle 决定坐标轴网格线的样式,‘-’为实线‘- -’为虚线‘:’为点线‘-.’为点虚线

plot(1:10);grid on;set(gca,'gridlinestyle','-.');将当前坐标轴显示的网格线为点-虚线

(6)linewidth 定义X,Y和Z轴的轴线宽度(以点单位定义)

(7)NextPlot:有效值为add|replace|replacechildren,默认为 replace

add表示使用当前的坐标轴,把新的图形对象加到此坐标轴中是一般保留的做法,replace表示重新设置坐标轴的所有属性 (Position除外),也就是在绘图前会删除当前坐标轴和它的子对象。replacechildren表示移除当前坐标轴中所有子对象,但不重新设置 坐标轴的所有属性

(8)Outerposition决定坐标轴外边界的位置。由位置向量[left,bottom,width,height]组 成,其中left,bottom表示相对于绘图窗口左下角的位置,width,height表示区域尺寸,默认为[0 0 1 1]

(9)Position位置向量[left,bottom,width,height]组成,决定坐标轴位置

(10)Tag定义本坐标轴的卷展栏,因为每一个对象都有 自己唯一的识别码即tag,以方便findobj函数查找坐标轴句柄值。

(11)visible决定坐标轴是否可见

(12)set(gca,'xgrid','on') 绘制X轴垂直网格线

set(gca,'gridlinestyle',':','linewidth',3)设置网格线线条类型和宽度

set(gca,'box','on') 将图轴方框绘制出来

     set(gca,'xscale','linear');将X轴刻度设为线性

set(gca,'yscale','log'); 将Y轴刻度设为对数

(14)disp()显示一个数组,但不显示其数组名称

  (15.tic,toc测量函数的执行时间;单位为秒;

(16).uint16的范围是0-65535,uint8的范围是0-255

matlab提供强制转换为uint8的函数即uint8(number)。

但这个函数的做法是把大于255的数全部强制置为255,而小于255的部分则保持原样不变。

若希望将0-65535的灰度级映射到0-255上,则可采用以下的办法:

uint8(double(number)/65535*255)

17.转置   a(:)作用是把矩阵a转换为列向量,就是一列,你可以试一下。

至于.'是一般转置的意思,这个你显然知道。

综合上面两个可知a(:).'是把矩阵a转换为一个行向量,就是一行。

补充:'是共轭转置的意思。当矩阵a是实矩阵时,他和.'作用是一样的,但当a是复矩阵时,二者是有区别的,具体可参见下面这个链接。

(18.)ind2sub该函数用于把数组中元素索引值转换为该元素在数组中对应的下标

[I,J] = ind2sub(size,IND)

这种调用格式适用于二维数组,其中siz是数组的尺寸,通常通过调用size函数获取。IND则是索引值,返回值为索引值为IND的元素在该二维数组内的行列下标。

[I1,I2,I3,...,In] = ind2sub(siz,IND)

这种调用格式适用于多维情况。

[I,J] = ind2sub(siz,IND)

这种调用格式适用于二维数组,其中siz是数组的尺寸,通常通过调用size函数获取。IND则是索引值,返回值为索引值为IND的元素在该二维数组内的行列下标。

[I1,I2,I3,...,In] = ind2sub(siz,IND)

这种调用格式适用于多维情况。

这种调用格式适用于二维数组,其中siz是数组的尺寸,通常通过调用size函数获取。IND则是索引值,返回值为索引值为IND的元素在该二维数组内的行列下标。

[I1,I2,I3,...,In] = ind2sub(siz,IND)

这种调用格式适用于多维情况。

20.在matlab中[y ind]=sort(X)什么意思啊

>> A=[8 5 7 3 9 1 7];

>> [a i]=sort(A)

a =

1    3    5    7    7    8    9

i =

6    4    2    3    7    1    5

21.size函数的用法



22.若x=【1,2,3;4,5,6】,那x(:,1)=[1;4],x(1,:)=[1,2,3],x(1,:)是取某一行

23.meshgrid是MATLAB中用于生成网格采样点的函数。

https://jingyan.baidu.com/article/d2b1d1029f82bb5c7f37d45d.html

24.MATLAB制作切片图主要用到slice命令

https://jingyan.baidu.com/article/b7001fe1add7dc0e7382dd61.html

25.colormap在利用matlab绘图时,颜色的设置显得异常重要,优秀的colorbar能让读者对图片所想展示的信息一目了然。而在使用colormap()函数时,matlab已经内置了集中色彩模式包括jet,hsv,hot,cool,spring,summer,autumn,winter,gray,bone,copper,pink以及lines等13中模式,但是使用这些内置模式也许不能满足你的心意,那么可以根据自己的意愿对颜色进行修改,

https://jingyan.baidu.com/article/9158e00039cfada25512287b.html

26.matlab函数——shading函数

是阴影函数控制曲面和图形对象的颜色着色,即用来处理色彩效果的,包括以下三种形式:

shading faceted:默认模式,在曲面或图形对象上叠加黑色的网格线;

shading flat:是在shading faceted的基础上去掉图上的网格线;

shading interp:对曲面或图形对象的颜色着色进行色彩的插值处理,使色彩平滑过渡 ;

27.axis相关的几条常用命令还有:

axis auto              自动模式,使得图形的坐标范围满足图中一切图元素

axis equal                    严格控制各坐标的分度使其相等

axis square            使绘图区为正方形

axis on                恢复对坐标轴的一切设置

axis off                取消对坐标轴的一切设置

axis manual          以当前的坐标限制图形的绘制

28.find()函数的所有用法:

1、 b=find(a),a是一个矩阵,查询非零元素的位置,如果X是一个行向量,则返回一个行向量,否则,返回一个列向量。如果X全是零元素或者是空数组,则返回一个空数组,例子如下所示,也可以用b=find(a>2),这句的意思是在a中找到比较2大的元素;

2、b=find(a,2),找出a中最先出现的2个不为零的数,a是你所要找的矩阵,2参数是指数量;

3.3、c=find(a,2,'first'),用法和上例基本一样;

https://zhidao.baidu.com/question/178286906.html

29.floor函数:朝负无穷大方向取整

2、用法说明:

      y = floor(x) 函数将x中元素取整,值y为不大于本身的最小整数。对于复数,分别对实部和虚部取整

3、用法举例

30.ceil-向正无穷大方向取整。

 ceil   Round towards plus infinity.

    ceil(X) rounds the elements of X to the nearest integers

    towards infinity.

31.sort函数

给数列a从小到大排列,找前几个最大的。如下:[b,i]=sort(a)。b为从小到大的数字,i为对应位置。要找前3个,如下输入:>> a=[3,15,6,21,18,2,18,19,1,4,7,29, 21 ,23 ,29 ,23, 14, 6, 9 ,29 ,31];

>> [b,i]=sort(a)

b =  Columns 1 through 12      1    2    3    4    6    6    7    9    14    15    18    18  

Columns 13 through 21    19    21    21    23    23    29    29    29    31

i =  Columns 1 through 12      9    6    1    10    3    18    11    19    17    2    5    7  

Columns 13 through 21      8    4    13    14    16    12    15    20    21

>> b(19:21)

ans =    29    29    31

>> i(19:21)

ans =    15    20    21

32.索引无法生成多个结果。一般是前面的变量名重复了。

sort(A)若A是向量不管是列还是行向量,默认都是对A进行升序排列。sort(A)是默认的升序,而sort(A,'descend')是降序排序。

sort(A)若A是矩阵,默认对A的各列进行升序排列

sort(A,dim)

dim=1时等效sort(A)

dim=2时表示对A中的各行元素升序排列

看下面的例子

>> A=magic(3)

A =

8 1 6

3 5 7

4 9 2

>> sort(A)

ans =

3 1 2

4 5 6

8 9 7

>> sort(A,1)

ans =

3 1 2

4 5 6

8 9 7

>> sort(A,2)

ans =

1 6 8

3 5 7

2 4 9

===================

Matlab中给一维向量排序是使用sort函数:sort(A),排序是按升序进行的,其中A为待排序的向量;若欲保留排列前的索引,则可用 [sA,index] = sort(A) ,排序后,sA是排序好的向量,index 是 向量sA 中对 A 的索引。 索引使排列逆运算成为可能。

事实上,这里A ≡sA(index) , [A恒等于sA(index)],这个结论确实很奇妙,而且很有用。不信你排序之后试下键入命令sA(index) ,看看得到的是不是就是排列前的A呢。

=====================

在Matlab中排序某个向量(一维)时,可以使用sort(A),其中A为待排序的向量,如果仅是用来排序A,那么直接使用sort(A)即可,如 果排序后还需要保留原来的索引可以用返回值,即[B,ind]=sort(A),计算后,B是A排序后的向量,A保持不变,ind是B中每一项对应于A中 项的索引。排序是安升序进行的。

在Matlab中,访问矩阵中的元素,一维用A(1)访问向量A的第一个元素;(下标从1开始);二维用A(1,2)访问A中第一行,第二列的元素。

由于在sort函数的结果中,是安升序排序的,要转换成降序,先用X=eye(n)生成一个n维的单位阵,然后用X=rot90(X)将其旋转为次对角线的单位阵,再用原来矩阵乘以X即可,如要讲A逆序排列采用如下步骤:

X=eye(size(A));

X=rot90(X);

A=A*X;

假如a是一个2*n的矩阵,即两行.

b=a(1,:);

[c,pos]=sort(b);%pos为排序后的下标,c为第一行的排序结果;

a(2,:)=a(2,pos);%第二行按照第一行排序的下标对应

a(1,:)=c;%第一行结果重新赋给a 的第一行

以下适用于m*n的矩阵按第一行排序

[ b, pos ] = sort( a( 1, : ) );

a = a( :, pos );

=======================

matlab按某一列排序,其他列不变办法

b=sortrows(a,2)    %a 为要排序的矩阵。2表示按第几列进行排序,整数代表升序,负数代表降序。

%将矩阵a按照第2列的升序排列,其他列不会作升序排列,而是将跟随着第2列 的变化,保持一一对应。

b=sortrows(a,-3)

%将矩阵a按照第3列的降序排列,其他列将跟随着第3列 的变化,保持一一对应。

data =

1     3     2

7     6     5

4     9     8

sortrows(data,1)

ans =

1     3     2

4     9     8

7     6     5

sortrows(data,-1)

ans =

7     6     5

4     9     8

1     3     2

Example 1

Sort horizontal vector A:

A = [78 23 10 100 45 5 6];

sort(A)

ans =

5     6    10    23    45    78   100

Example 2

Sort matrix A in each dimension:

A = [ 3 7 5

0 4 2 ];

sort(A,1)

ans =

0     4     2

3     7     5

sort(A,2)

ans =

3     5     7

0     2     4

Sort it again, this time returning an array of indices for theresult:

[B, IX] = sort(A, 2)

B =

3     5     7

0     2     4

IX =

1     3     2

1     3     2

Example 3

Sort each column of matrix A in descendingorder:

A = [ 3  7  5

6  8  3

0  4  2 ];

sort(A,1,'descend')

ans =

6   8   5

3   7   3

0   4   2

This is equivalent to

sort(A,'descend')

ans =

6   8   5

3   7   3

0   4   2

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,527评论 5 470
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,314评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,535评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,006评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,961评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,220评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,664评论 3 392
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,351评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,481评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,397评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,443评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,123评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,713评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,801评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,010评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,494评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,075评论 2 341

推荐阅读更多精彩内容

  • 基础篇NumPy的主要对象是同种元素的多维数组。这是一个所有的元素都是一种类型、通过一个正整数元组索引的元素表格(...
    oyan99阅读 5,098评论 0 18
  • 显示中文帮助的方法 预设→常规→帮助→在mathworks.com网站上(需要Internet连接)→语言(简体中...
    VeyronC阅读 2,428评论 0 34
  • NumPy是Python中关于科学计算的一个类库,在这里简单介绍一下。 来源:https://docs.scipy...
    灰太狼_black阅读 1,220评论 0 5
  • 先决条件 在阅读这个教程之前,你多少需要知道点python。如果你想从新回忆下,请看看Python Tutoria...
    舒map阅读 2,560评论 1 13
  • 七律•岁月有痕(师木工) 文/暮秋斜阳 浪里行舟靠舵灵,涡流难识任漂萍。 一批三学校规乱,五育并擎国策宁。 尊旨务...
    宋瑞祥阅读 290评论 0 3