Matlab网课1——3章学习笔记(乱版)

时间:2024-02-22 21:12:32

注意注意!!!第52,67,69,70是作图相关内容

1.Command Window 命令窗口
2.修改键盘快捷键 File-Preferences-Keyboard-Shortcuts
3.format short和format long 可以切换数值保留小数的位数
4.format compact临时紧凑,format loose取消紧凑
5.clc虽然清空了命令窗口,但之前的数据都已被保存
6.Workspace(工作空间窗口},显示所有已存变量的相关信息,其中所有的变量都可以编辑
7.“.mat"格式是专门保存数据的文件
8.“clear b”删除b变量
9.在command history中选择某个命令,右键选中Evaluate salaction就可以再次执行该命令
10.m文件是文本文件,可以用记事本打开查看,在记事本中编辑后保存,可以在matlab中执行
11.fig文件,图像文件。
12.mdl文件,模型文件。通过simulink
13.mat文件,数据格式文件
14.如果workspace被清空,但某个数据文件被保存过,只需要在命令窗口输入 load 文件名 即可找回
15.变量的初始化方法:(1)赋值语句
(2)用input函数从键盘输入初始化变量
>> v5=input(\'请输入数据\')
请输入数据98

v5 =
98
16.inf表示正无穷大
17.NaN 不定式 表示非数值量,产生于0/0,无穷/无穷等运算
18.若要永久性修改保存位置,可在matlab属性—快捷方式—起始位置处修改
19.>> z=[1 2 2]\'

z =

1
2
2
20。元素全为1的矩阵
>> ones(3)

ans =

1 1 1
1 1 1
1 1 1

>> ones(4,2)

ans =

1 1
1 1
1 1
1 1
21.零矩阵
>> zeros(3,2)

ans =

0 0
0 0
0 0
22.单位对角矩阵
>> eye(4,3)

ans =

1 0 0
0 1 0
0 0 1
0 0 0
>> eye(4)

ans =

1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
23.冒号colon的迭代作用
>> 3:5

ans =

3 4 5

>> 3:2:11

ans =

3 5 7 9 11

>> 3:2:10

ans =

3 5 7 9
>> [3:2:10]\'

ans =

3
5
7
9
24.引用数组中的某个元素
a =

3 5 7 9

>> a(3)

ans =

7
引用矩阵中的某个元素
>> b=[24 5 18;7 36 51]

b =

24 5 18
7 36 51

>> b(2,3)

ans =

51
引用矩阵某一列/行
>> b(:,2)

ans =

5
36
>> b(1,:)

ans =

24 5 18
引用矩阵某一列/行中的某几个元素(连续)
>> c=[1 2 3;4 5 6;7 8 9;10 11 12]

c =

1 2 3
4 5 6
7 8 9
10 11 12

>> c(2:4,2) 注意:第二个2表示“第二列的元素”。2:4表示“从第二个到”都四个元素


ans =

5
8
11
引用矩阵某一列/行中的某几个元素(不连续)
d =

1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
>> d(4,1:2:4) 注意:第一个4表示“第四行的元素”。1:2:4表示“从第1个元素开始,以2递增,不大于4的元素,也就是第一个和第三个”。

ans =

13 15
25.用特殊方法定义矩阵
一,用特殊的赋值语句
>> E(3,2)=8

E =

0 0
0 0
0 8
二,拼接生成
>> F=[E,E]

F =

0 0 0 0
0 0 0 0
0 8 0 8

>> G=[E;E]

G =

0 0
0 0
0 8
0 0
0 0
0 8

>> H=[1:2:6;2 4 6]

H =

1 3 5
2 4 6
26.size函数反应矩阵行和列的维数
>> size(H)

ans =

2 3
length函数反应行列维数中较大的值
>> length(H)

ans =

3
27.子数组
>> c=[1 2 3;4 5 6;7 8 9;10 11 12]

c =

1 2 3
4 5 6
7 8 9
10 11 12

>> c(3,[1,3]) 注意:[1,3]表示“第一个和第三个元素”

ans =

7 9
28.子数组的赋值
>> d

d =

1 2 3 13
4 5 6 14
7 8 9 0
10 11 12 16

>> d(2,3)=0 注意:此处将0赋值给了d矩阵的第2行第3列

d =

1 2 3 13
4 5 0 14
7 8 9 0
10 11 12 16

29.end的使用
>> d

d =

1 2 3 13
4 5 6 14
7 8 9 0
10 11 12 16

>> d(2,2:end)

ans =

5 6 14
30.等差数列用linspace
>> linspace(0,10,6)

ans =

0 2 4 6 8 10
等比数列用logspace(但只能是10的次方数)
>> logspace(1,2,5) 注意:1表示“首项为10的1次方”。2表示“末项为10的2次方”。5表示:“共有五项”。

ans =

10.0000 17.7828 31.6228 56.2341 100.0000
>> logspace(1,3,3) 注意:1表示“首项为10的1次方”。3表示“末项为10的3次方”。3表示:“共有3项”。


ans =

10 100 1000

31.reshape函数将数列按照列的顺序排成矩阵
>> E=3:2:19

E =

3 5 7 9 11 13 15 17 19

>> reshape(E,3,3)

ans =

3 9 15
5 11 17
7 13 19
32.系统预定义的变量(date clock year month now today)
>> date

ans =

23-Jul-2017

>> clock

ans =

1.0e+03 *

2.0170 0.0070 0.0230 0.0140 0.0450 0.0010 注意:表示2017年7月23日14点45分1秒
>> year(now)

ans =

2017

>> month(now)

ans =

7

>> day(now) 注意:只输入now本身并没有意义,将now与year,month,day联合使用

ans =

23

matlab的算数运算符
一 标量运算
二 矩阵运算
三 数组运算
四 运算优先级(最高的乘方运算是优先级)

33.power函数也能起乘方作用
>> power(2,3)

ans =

8
34.matlab中的小括号,中括号,大括号,都是通过()的嵌套完成的
35.魔方矩阵magic
>> magic(3) 注意:括号中的3表示3阶。生成的魔方矩阵行,列,斜对角各元素之和相等,即15.

ans =

8 1 6
3 5 7
4 9 2

>> magic(4) 注意:括号中的4表示4阶。生成的魔方矩阵行,列,斜对角各元素之和相等,即34.

ans =

16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
36.inv可以求逆矩阵,故a/b=a*(invb)
37.矩阵乘法中“*”表示正常矩阵相乘,而“.*”表示各元素对应相乘
>> A=[1 2 3;4 5 6;7 8 9]

A =

1 2 3
4 5 6
7 8 9

>> B=[0 1 2;7 5 3;12 4 6]

B =

0 1 2
7 5 3
12 4 6

>> D=A*B 注意:完全按照数学定义来运算

D =

50 23 26
107 53 59
164 83 92
>> C=A.*B 注意:“.”代表各元素的意思,故“.^”“./”分别表示“各项分别乘方”,“各项分别做除法”。

C =

0 2 6
28 25 18
84 32 54
38.“log”默认以自然对数e为底,也可输入“log10”或者“log2”
39.求绝对值运算用abs
>> abs(-9)

ans =

9
39.求平方根运用sqrt算
>> sqrt(2)

ans =

1.4142
40.符号函数用sign
41.圆整函数
一.天花板函数(朝着正无穷大圆整),用ceil
二.地板函数(朝着负无穷大圆整),用floor
>> ceil(6.2)

ans =

7

>> floor(6.2)

ans =

6
>> ceil(-6.2)

ans =

-6

>> floor(-6.2)

ans =

-7

三.fix函数(朝着0圆整)
>> fix(6.2)

ans =

6

>> fix(-6.2)

ans =

-6
四.round函数(朝着最近的整数圆整,按照四舍五入)
五.mod取余
>> mod(8,5)

ans =

3
42.多项式相乘函数用conv
一.求值
>> x=3,y=9,conv(2*x + 5*y,6*y - 2)

x =

3

y =

9


ans =

2652
二.求展开式
>> conv([1 1],[1 1]) 注意:多项式在matlab中根据次方数降阶输入系数形成矩阵,[1 1]表示x+1,所以[1 2 1]表示x^2+2x+1

ans =

1 2 1
>> conv([1 1],[1 -1])

ans =

1 0 -1
43.求最大值和最小值用max和min
>> A=[6 5 8;1 2 15;65 0 1;]

A =

6 5 8
1 2 15
65 0 1

>> max(A) 注意:matlab对输入矩阵时按列依次输入,故求矩阵最大值时显示的是每列最大的元素

ans =

65 5 15

>> min(A)

ans =

1 0 1
>> max(max(A)) 注意:如果想找出一个矩阵中的最大元素,只需要连续使用两次函数

ans =

65

>> min(min(A))

ans =

0


>> B=[5 6 8 58 0 25 88]

B =

5 6 8 58 0 25 88

>> max(B)

ans =

88

>> min(B)

ans =

0
44.一.求平均值用mean

>> mean(B)

ans =

27.1429
>> sum(B)

ans =

190
二.求积用prod
>> prod(B) 注意:只用于标量求积,矩阵不行

ans =

0
三.求和用sum
>> sum(B) 注意:只用于标量求和,矩阵不行

ans =

190
四.sum的特殊用法
>> a

a =

1 2 3
4 5 6

>> sum(a,1) 注意:sum(x,1)表示逐列求和

ans =

5 7 9

>> sum(a,2) 注意:sum(x,2)表示逐行求和

ans =

6
15
>> sum(sum(a,1),2) 注意:如果想计算矩阵所有元素的和,只需要先对行求和再对列求和好、,或者先对列求和在对行求和

ans =

21
45.复数
一.取实部(用real函数)
>> real(3+4i)

ans =

3

.取虚部(用imag函数)
>> imag(3+4i)

ans =

4
三.求模(用abs函数)
>> abs(3+4i)

ans =

5
四.求辐角(用angle函数)
注意:“复数的辐角”在复变函数中,自变量z可以写成 z= r*(cosθ + i sinθ) .r是z的模,即:r = |z|; θ是z的辐角。 在0到2π间的辐角称为辐角主值。
五.求共轭复数(可以在数后加“\'”,也可以用conj函数)
>> (3+4i)\'

ans =

3.0000 - 4.0000i

>> conj(3+4i)

ans =

3.0000 - 4.0000i

46.矩阵的若干运算
一.求积运算(用corss函数)
>> P=[1 2 3;4 5 6;7 8 9]

P =

1 2 3
4 5 6
7 8 9

>> Q=[2 5 8;12 35 0;5 1 9]

Q =

2 5 8
12 35 0
5 1 9
>> cross(P,Q)

ans =

-64 -275 54
9 38 45
4 45 -48
二.求点积(用dot函数)
>> a=[1 2 3]

a =

1 2 3

>> b=[4 5 6]

b =

4 5 6
>> a*(b\')

ans =

32

>> dot(a,b)

ans =

32

>> dot(a,(b\'))

ans =

32
注意:
1、乘积
用于矩阵相乘,表示为C=A*B,A的列数与B的行数必须相同,C也是矩阵,C的行数等于A的行数,C的列数等于B的列数。Cij为A的第i行与B的第j列的点积。
2、点积
用于向量相乘,表示为C=A.*B,A与B均为向量,C为标量,也称标量积、内积、数量积等
三.求逆(用inv函数)
注意:取逆之前最好用det判断行列式的值是否为零,若为零,则逆不存在
m =

1 2 3
2 4 6
77 88 99

>> det(m)

ans =

0
>> inv(m)

ans =

Inf Inf Inf
Inf Inf Inf
Inf Inf Inf

四.求行列式的值(用det函数)
>> A

A =

6 5 8
1 2 15
65 0 1

>> det(A)

ans =

3842
五.求矩阵的秩(用rank函数)
六.求矩阵点的特征值(用eig函数)
七.求矩阵的迹(用trace函数)
注意:迹就是矩阵主对角线个元素之和
>> A

A =

6 5 8
1 2 15
65 0 1

>> trace(A)

ans =

9
47.字符串与数字间的转换
一.将字符转成数字(用abs或者double函数)
>> abs(\'A\') 注意:以下几个例子都是将字符转为ascll码,计算机通过存储ascll码来保存字符串

ans =

65

>> abs(\'a\')

ans =

97
>> abs(\'王丹\')

ans =

29579 20025
>> D=\'who are you\'

D =

who are you

>> abs(D)

ans =

119 104 111 32 97 114 101 32 121 111 117
>> double(D) 注意:double与abs在转换字符上有相同作用

ans =

119 104 111 32 97 114 101 32 121 111 117
二.将数字转化为字符(用char函数)
>> char(97)

ans =

a
>> char(29482)

ans =

>> char(29483)

ans =


三.将数据字符转化为数据(用str2num函数)
>> str2num(\'8\')

ans = 注意:虽然两个都是8,但\'8\'是字符,无法进行计算。必须要转化为数据才行。

8
四.将数据转化为数据字符(用num2str函数)
注意:转化为字符后,无法计算,正当做文字
48.如果想要输出一个单引号,那么就连续输两次
>> c=\'I\'\'m good\'

c =

I\'m good
49.大小写字母间的转换
方法一:用lower函数(大转小),upper函数(小转大)
>> lower(\'A\')

ans =

a

>> upper(\'a\')

ans =

A
方法二:
>> char(\'A\'+32) 注意:同一字母大小写的ascll码差32。常用的是A为65,a为97

ans =

a
50.冒号递增作用在字符中的使用
>> [\'a\':\'z\']

ans =

abcdefghijklmnopqrstuvwxyz

>> [\'a\':\'f\']

ans =

abcdef
>> [\'a\':2:\'z\'] 注意:这里和之前冒号作用部分的作用一样,从按开始递增2,直到z结束。字符在计算机中先存为ascll码,再加2,最终又以字符的方式输出。

ans =

acegikmoqsuwy
51.字符串函数
一.比较两个字符串是否相同(用strcmp函数
>> A=\'你是个好人\';
>> B=\'你是个坏蛋\'; 注意:如果两个字符串相同,则输出结果为1,反之为0。
>> strcmp(A,A)

ans =

1

>> strcmp(A,B)

ans =

0
>> C=\'你是个好人\';
>> strcmp(A,C)

ans =

1
二.比较字符串中部分字符是否相同(用strncmp函数)
>> A=\'你是个好人\';
>> B=\'你是个坏蛋\';
>> strncmp(A,B,3) 注意:这里的3表示“比较A和B的前三个字符”,由于二者前三个字符相同,故输出1。下同,由于前4个字符不完全相同,故输出0。

ans =

1

>> strncmp(A,B,4)

ans =

0
三.查找字符串中的某个字符(用findstr)
>> A

A =

你是个好人

>> findstr(A,\'好\')

ans =

4               注意:4表示“好”在A字符串中的第四位
.字符串横向拼接(用strcat函数)
>> strcat(A,B)

ans =

你是个好人你是个坏蛋
>> strcat(A,B\')

ans =

你是个好人你
你是个好人是
你是个好人个
你是个好人坏
你是个好人蛋
五.字符串的纵向拼接(用strvcat或者char函数)
>> strvcat(A,B)

ans =

你是个好人
你是个坏蛋
>> char(A,B)

ans =

你是个好人
你是个坏蛋
六.字符串的输出(用disp函数)
>> disp(\'请输入密码\') 注意:这个函数在编程时可以用来提示用户
请输入密码
52.plot作图
一.常规作图规则
>> x=0:0.01:2*pi;                 注意:0.01表示步长,步长太大会造成画图粗糙,步长太小会造成内存和运算的压力。
>> y1=sin(x);
>> plot(x,y1);
>> xlabel(\'X轴\');                   注意:xlabel函数可向x轴增添注释文字
>> ylabel(\'Y轴\')
>> grid on;                           注意 :grid on命令可以给图形增加网格
>> grid off;                           注意:grid off可去除网格
>> legend(\'正弦函数\')          注意:legend可添加图例
>> y2=cos(x);
>> plot(x,y2)                        注意:此时图中只出现cos(x)的图像
>> hold on                           注意:hold on命令用于给当前图像窗口添加图像
>> plot(x,y1)                        注意:此时图像窗口同时出现sin和cos两种图像
>> plot(x,y1,x,y2)       注意:用plot同时输入两组参数也可以让两种图像同时出现
>> legend(\'x,y1\',\'x,y2\')    注意:增加图例后可以分清函数对应的图像
>> legend(\'你大爷\',\'你二大爷\') 注意:legend后输入的字符就是图例上的文字,可以按照需要任意取名,但顺序是按照plot中的参量顺序。比如‘你大爷’对应y1=sin(x)
>> axis([0 2*pi -1 1])          注意:axis函数可以限制定义域和值域,也就是限制x轴和y轴的范围。按照矩阵的形式“[minx maxx miny maxy]”
                             注意:如果输入axis equal那么将自动生成定义域与值域长度相同的图像
>> plot(x,y1,\'-r\',x,y2,\'+b\'); 注意:\'-r\'表示“图像由-构成,且为red红色”。\'+b\'表示“图像有+构成,且为blue蓝色”。还有许多图形和颜色,可以在help下查找。
二.将x轴或y轴变为对数坐标系
例1 >>x=10.^(0:0.01:10); 注意:这里是“.^”
>> y=0:0.01:10;
>>semilogx(x,y); 注意:这里semilogx表示对x取对数,以10为底
例2 >> x=10.^(0:0.01:10);
>> y=0:0.01:10;
>> loglog(x,y); 注意:这里的loglog函数表示对x,y同时取对数
53.格式化输出(重要)
一.格式化输出函数fprintf,%后加不同的系统预定义字母可以输出各种类型的结果。详情可以查看help fprintf
二.解决实际问题(温度转换):设计一个matlab程序,读取一个华氏温度的输入,输出开尔文温度。且有T(开尔文)=((5/9)*T(摄氏度)-32)+273.15
程序内容
% temperature conversion 注意:%后的都是注释说明文字,并不运行
tem_f=input(\'请输入一个华氏温度\'); 注意:input函数可为用户提供提示文字
tem_k=((5/9)*tem_f-32)+273.15; 注意:用tem_k表示开尔文温度,tem_f表示摄氏度。
fprintf(\'%6.2f in Fahrenreit=%6.2f in keivin\',tem_f,tem_k); 注意:这个式子表示开尔文温度中小数点前保留6位有效数字,小数点后保留两位有效数字=摄氏度中小数点前保留6位 有效数字,两个变量分别是tem_f和tem_f。
运行结果
请输入一个华氏温度17.2
17.20 in Fahrenreit=250.71 in keivin>>
54.编程所遵循的一般规律
顺序结构:按照编写顺序依次执行
选择结构:根据判断结果决定执行程序的哪部分
循环结构:根据判断结构决定某部分代码的反复执行
55.编程的一般步骤
(1)清晰的陈述你所解决的问题
(2)明确程序的输入与输出及所需的变量
(3)设计解决问题所需的算法
(4)将算法转换为Matlab代码
(5)测试所写的程序并修改Bug(语法出错,逻辑出错,运行出错)
56.逻辑值:0,1。其中1表示肯定,0表示否定。
关系运算符:<,<=,>,>=,==,~=(不等于)
例一
>> A=5;
>> B=6;
>> A==B

ans =

0
例二
>> \'A\'>\'B\' 注意:这里会转化为ascll码值进行比较

ans =

0
注意:有时无法区分程序中的0和1是逻辑值还是数值,可以用whos命令查看class(数据类型),如果是logical就是逻辑值,如果是double就是数值。
例三
>> %在计算机中由于二进制和圆整的问题,精度会受到干扰。于是就出现了下面这种情况
>> sin(pi)

ans =

1.2246e-16
>> sin(pi)==0

ans =

0

>> abs(sin(pi)-0)<1.0e-14 注意:一般通过做差的方式判断,如果A和B的差小于一个特小的数,就认为A==B

ans =

1
57.关系运算符在数组和矩阵中的应用(对应元素进行比较)
>> A=[1 2 3]

A =格式化

1 2 3

>> B=[1 2;3 4]

B =

1 2
3 4

>> C=2

C =

2

>> A==C

ans =

0 1 0

>> B<C

ans =

1 0
0 0

>> D=[2 3 4]

D =

2 3 4

>> A<=D

ans =

1 1 1
58.逻辑运算(布尔运算)
(1)逻辑运算:逻辑值(非零值与零值)+逻辑运算符
(2)逻辑运算符:&(与 A&B),|(或 A|B),~(非 ~A),xor(异或 xor(A,B))
注意:xor也称逻辑排他,如果A与B的真假不同,那么xor(A,B)=1,即真。
(3)运算优先级:算术运算,关系运算,非,与,或
>> A=3+(2<1)+0

A =

3
>> B=3+2<1+0

B =

0
>> whos
Name Size Bytes Class Attributes

A 1x1 8 double
B 1x1 1 logical
(4)在逻辑运算中,非零值都认为是逻辑真,零值都认为是逻辑假
59.短路运算
(1)符号:&&(短路运算的逻辑与),||(短路运算的逻辑或)
&(元素运算的逻辑与),|(元素运算的逻辑或)
(2)所谓A||B,是如果A是真,那么整个结果就是真,B不用参与运算,这称为为短路运算
所谓A&&B,是如果A是假,那么整个结果就是假,B不用参与运算,这称为为短路运算
(3)参与短路运算的必须是标量值,也就是说不能是数组或矩阵
60.常见逻辑函数
(1)ischar(x),用来判断x是否为字符
(2)isempty(x),用来判断x是否为空值,空字符或空矩阵
(3)isinf(x),用来判断x是否为无穷大
(4)isnan(x),用来判断x是否不是数值
(5)isnumeric(x),用来判断x是否是数值
61.选择结构的三种形式:if,swith,try/catch
62.if结构示例
a=input(\'请输入a\');
b=input(\'请输入b\');
c=input(\'请输入c\');
if(b^2-4*a*c)<0
disp(\'This equation has two complex roots.\');
elseif(b^2-4*a*c)==0
disp(\'This equation has two identical real root.\');
else
disp(\'This equation has two distinct real roots.\');
end
62.流程图的绘制(开始与结束用“圆角矩形”,条件判断用“菱形”,一般语句用“长方形”)
63.复数的输出
(1)fprintf(\'x=%f\n\',x) 注:“\n”表示换行
(2)disp([\'x=\'num2str(x)\'\n\']) 注:将数据转化为数据字符(用num2str函数)
64.举例
% a,b,c,x1,x2,delt,realpart(\'实部\'),imagrpart(\'虚部\')
a=input(\'请输入系数a:\');
b=input(\'请输入系数b:\');
c=input(\'请输入系数c:\');
delt=b^2-4*a*c;
if(delt>0)
fprintf(\'该方程有两个不同的实根:\n\');
x1=(-b+sqrt(delt))/(2*a);
x2=(-b-sqrt(delt))/(2*a);
fprintf(\'x1=%f \t x2=%f\',x1,x2);
elseif(delt==0)
fprintf(\'该方程有两个相同的实根:\n\');
x1=-b/(2*a);
fprintf(\'x1=x2=%f\',x1);
else
fprintf(\'该方程有两个不同的复数根:\n\');
realpart=(-b)/(2*a);
imagepart=sqrt(abs(delt))/(2*a);
fprintf(\'x1=%f+%fi:\n\',realpart,imagepart);
fprintf(\'x2=%f-%fi\',realpart,imagepart);
end
65.switch结构
(1)switch结构是另一种形式的选择结构。我们可以根据一个整形数,字符或逻辑表达式的值来选择执行特定的代码语句块。
(2)举例
value=input(\'请输入一个数值\')
switch(value),
case{1,3,5,7,9},
disp(\'The value is odd\');
case{2,4,6,8,10},
disp(\'The value is even\');
otherwise,
disp(\'The value is out of rang\');
end
(3)举例
traffic_light=input(\'请输入一种交通灯:\n\');
switch(traffic_light)
case\'红灯\'
disp(\'禁止通行\');
case\'黄灯\'
disp(\'请等一等\');
case\'绿灯\'

disp(\'可以通行\');
otherwise
disp(\'错误的输入\')
end
66.try/catch结构
(1)try/catch结构是选择结构的一种特殊结构,用于捕捉错误。当程序运行时遇到错误,程序会终止执行,但如果将可能出错的结构放在try语句中,那么程序会执行catch语句而不会中断程序的执行。
(2)举例
a=[4 28 9 65 42 1 0 20 35 14];
try
index=input(\'请输入要显示的元素的下标:\');
disp([\'a(\' int2str(index) \')=\' num2str(a(index))]); 注意:int2str表示“整形转化为字符串”
catch
disp([\'Illegal subscript:\' int2str(index)]);
end
67.多个图像窗口与子窗口
(1)figure(n)设置当前窗口,不存在则创建
(2)subplot(m,n,p),这表示:一共有m*n个子窗口,其中第p个为当前窗口。 注意:这m*n个图像会在同一窗口进行平铺,但后续操作只针对选中的当前窗口
68.图像的增强控制
(1)LineWidth 用来指定线的宽度
(2)MarkerEdgeColor 用来指定标识表面的颜色
(3)MarkerFaceColor 用来指定填充标识的颜色
(4)MarkerSize 用来指定标识的大小
例一:
x=-pi:pi/10:pi;
y=tan(sin(x))-sin(tan(x));
plot(x,y,\'--rs\',\'LineWidth\',2,... 注意:“--”表示数据点间由虚线连接;“r”表示连线为红色,“s”表示长方形(相关问题通过help plot);线宽为2
\'MarkerEdgeColor\',\'k\',... 注意:“k”表示色标识表面颜色为黑色
\'MarkerFaceColor\',\'g\',... 注意:“g”表示标识的填充色为绿色
\'MarkerSize\',10) 注意:指定标识的大小为10号
例二:下面的命令将画出一个图像,轨迹的宽度为3,颜色为黑色,圆圈标识的宽度为6,每个标识为红色边缘和绿色内核。
69.文本的高级控制(主要用于图像标题的制作)
(1)字符的高级控制包括:黑体,斜体来格式化,也包括特殊的希腊或数学符号。
(2)文本的字体可以通过stream modifiers修改。一个stream modifier是一个特殊的1字符序列。
3)\bf 黑体(粗体 )
\it 斜体
\rm 恢复正常字体
\fontname 字体的名称
\fontsize 字体的大小
_{xxx} xxx作为某字符的下标
^{xxx} xxx作为某字符的上标
70.极坐标图
(1)语法形式:polar(theta,r),其中theta用弧度单位
(2)可以绘制心形图,详情见PolarCoordinates.m文件

 

 

 

 

---恢复内容结束---