找回密码
 注册
关于网站域名变更的通知
查看: 563|回复: 1
打印 上一主题 下一主题

MATLAB axis和axes的区别

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-9-10 15:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
5 r+ P  b8 f: _4 h
axis中文为“轴”之意,在matlab中用于控制坐标轴的范围和样式(颜色等)。$ g9 S% Y5 H8 d0 K9 W* R
; Y5 d0 n0 V/ O% f1 S7 K1 t5 I
axis([XMIN XMAX YMIN YMAX]) 设置当前所绘图像的x轴和y轴的范围。, _* z5 Y" W' ~: w, I8 U7 S5 a
axis([XMIN XMAX YMIN YMAX ZMIN ZMAX]) 设置当前所绘图像的x轴、y轴和z轴的范围。
/ D  ^3 \, M. ]* R  n; K
% _# Q  L* e! G6 y& W0 T例子:
7 J: s) }" _7 X: P7 Q- ]: h7 F. u2 E/ c5 ^$ D
>> x = [1,2,3,4,5];
* L. o3 Y% j) x4 E# x>> y = [2,3,4,5,6];
0 m3 u: q: d9 K: D>> plot(x,y,'o')3 P0 X% U3 H, Q- }( ~
9 H. |0 t; T# J9 x, Y& Q8 y* z1 L
>> axis([0,5,0,6]);  %axis要放在plot之后
  [; E, f+ H( O5 x$ f8 s0 g  j% R0 I" P" ]' [+ }6 ?4 O- D) J8 x
得到图像( [1 l  O: [+ y" W

: M% D, U) `- `9 B! w! [0 s: m+ [
1 r. `/ n2 B- L; B* Z* `$ r! F( H2 n* F3 y* I# s3 @4 G
axes ★★★★★
( b  I8 D2 n) D8 B9 w- \) w6 r# |
7 W" Y+ U) \8 s7 A3 ]6 D. p8 e. C . c. H+ s. X2 U- y
/ S0 C  H& @$ r" i; j
功能
3 A% X( X' j8 A- h  O( l
0 F3 \& p8 [; Q7 V9 y5 z创建坐标系图形对象
6 Y: G, z2 {  _2 i  a
2 W2 o! t' G% ]4 H+ \
$ g) o5 H) w0 D$ }! V9 Y' j4 J7 M4 X# A, ^5 D
语法
- w: R* `' \# ^/ N$ [/ h7 K( |
4 Q1 _) j0 Q3 B4 |6 A, G  oaxes
7 V/ m$ m0 K$ r9 G/ L; waxes('PropertyName',propertyvalue,...)
, w' U8 w$ K& a! G2 J4 R. Baxes(h)
/ R% `4 U# O) L" k! Jh = axes(...)" N+ D! f# G! [2 b8 ^4 c
1 R4 R: E7 a; `1 L4 S; I
- j9 a) Y, B7 }5 L2 Q& [- T, Y. G

& n, S( M$ t0 Q5 [" j$ J: |0 N描述
8 P3 y0 D# P3 T' k7 x- a6 a+ A, u# I6 j- B  A* P# J) |
axes在当前窗口中创建一个包含默认属性坐标系$ ]% p% T' ^2 X, }. |" r3 H: Y
" N1 c, i% }( r1 ?
% e) D) y& M, x2 {2 r; T% \6 \
axes('PropertyName',propertyvalue,...)创建坐标系时,同时指定它的一些属性,没有指定的使用DefaultAxes**,当然可以在以后使用set/get函数进行设置/读取,坐标系axes所有属性参见附录' T6 l+ r9 f5 V. [1 U0 P9 g+ M

, |: b7 }- O1 M; ^
4 R# }# I5 Z# e( u4 w$ Naxes(h)将坐标系h置为当前坐标系,同时将figure中的CurrentAxes属性设置为h,并且将h排列到children属性中第一个axes位置。默认情况,所有图形函数都是在当前坐标系上绘图9 l. W" ], L6 ^6 Q6 M

* B! `9 j) C" f6 F0 ~
$ R% f0 z+ p. }) b# {4 ~" ph = axes(...)创建坐标系时返回它的句柄,方便以后操作& v$ o: O- Q6 ?

  z& H# U0 f& O ! _  T# F1 a( v) W2 y2 I: y. b

1 b8 ~: c1 O% Y" _; k- T/ y注意
% o  i8 p8 Z0 b* [- s7 I2 r2 }# z' G! ^7 G, J& s
当在执行绘图操作时,如果没有axes或figure,MATLAB会自动创建一个axes或figure
  h6 y8 @$ M1 D3 E/ m2 w
0 c% }# ~( R% O4 N5 L7 ]每次创建新axes时,所有的属性都会重置为DefaultAxes**;正常情况每次调用高级绘图命令时,会重置axes部分属性,比如ColorOrder、LineStyleOrder等
& C' S  X& O4 G' B: _( a9 N0 _  k: S; [) m! d8 t  M* \# p
8 p# i+ V/ V0 B
( o+ d( d/ _: |5 }8 Q
set(figure_handle,DefaultAxes**,Value)可以自定义axes的默认属性! w  C7 \# |. Y% ^" {! c, M7 U

1 L3 c6 x; ^1 h% z - C$ H5 j2 z! f

5 G& y' V8 h! i5 ?- D  _axes是创建一个坐标系,而axis是对坐标系的简单控制,比如外形、比例等
8 F% J+ s1 h9 }0 v4 \! J0 ?+ o0 s3 Y, j# K8 A4 y
/ r* B. [/ H1 q4 |' j

' i7 X2 J$ |% _创建时有三种方式直接指定属性,无先后顺序,不区分大小写,效果一致* [7 j0 x6 b7 Y4 I) [

, \3 Z$ e: W/ f0 W2 F, L2 Q ; T+ [# m/ ~  n  q( z) |
6 x! s0 _" {. N( P0 h) j2 C
(1)Name/Value配对形式+ ]' B. a1 r; q+ Y$ l
% \9 ?5 r9 R; p! ]' ?+ ]4 a0 z
axes('Position',[0.2 0.2 0.6 0.6],'XGrid','on','XTickLabel',[]). P0 D* {1 q; t& c# x( G
! \, v. h. h/ [( Q) ^7 X' g

" v) p) W6 X2 T/ r
8 P  q9 f* Z. Z3 P0 v(2)结构体形式
' \! m! U) M1 _' Z/ Z# L
' [  b+ L4 f2 l2 S/ e5 ppp.Position=[0.2 0.2 0.6 0.6];, K9 ?& h1 u5 @. v# Y

$ B3 _( E  C& U  K: P6 m  Vpp.XGrid='on';
& [2 f- p/ E5 b# q
& I! H) n7 m" xpp.XTickLabel=[];
4 O9 ~3 R% b4 `& l! K" f! `/ W' x; m8 Y  Y2 Y, q. r) V
axes(pp)& L+ U4 o2 K! q  E# S# q, P
8 T% {6 l/ }4 R" W( A- ~
3 V" T/ e, R+ u# N( J8 n% p

) n3 ?( N- ^2 L9 B* J0 C3 {(3)细胞元组形式
$ t$ k' L7 n7 r5 O$ O2 T
9 F( ^, q% T% c7 ~. D1 `3 eName={'Position','XGrid','XTickLabel'};
% K# L8 _$ S4 Q  I0 v1 v
+ f& n. Z) b6 U# {! ~8 LValue={[0.2 0.2 0.6 0.6],'on',[]};6 p8 X2 ]8 ?# ~+ s; D

! ~& w0 k4 I. _( Baxes(Name,Value)
1 L% ?5 I; T) I) g: ?+ F$ r8 L, w9 K; V) p; t. |' U3 k
+ x1 \8 J  Z' ?4 p4 M. X$ {

! l1 F; q6 _% {0 x( ^5 F6 T) l( l实例- |0 N. n3 R6 K+ b+ R

, W! i! X( Q0 m# V9 I% 先创建两个坐标系,过程中指定某些参数
4 K( _9 Q" N1 M2 H) U/ K/ x6 |
2 ^% T5 A1 L( ]% Zh1=axes('Position',[0.1 0.2 0.3 0.6],'Unit','normalized','LineStyleOrder',':|--|-.|-');
" c+ e0 A' u  V; ?. v, E" X/ S* F. j. Y; o6 h# r; z
h2=axes('Position',[0.6 0.2 0.3 0.6]);" i2 [. _' _+ |% s

9 Q2 T* V# W( o7 m% 将h1设置为当前坐标系,为绘图准备: O- X9 N1 c' q6 F1 i1 s
& Y' p2 q: X$ A
axes(h1)
& B2 K, H( V: m9 p( d' n; _. W6 F/ q% @# K
plot(rand(10,3)) % 即使创建h1时将线型顺序修改了,但由于每次调用plot会将LineStyleOrder重置为'-',故这里是看到的都是实线" e! g: k9 [5 V( P- V( Y# g& K
- C7 c: P# z3 j
5 将h2设置为当前坐标系) r* \: S" ]) |. u$ d' m
+ [5 {* ]& |0 h" b) E2 D; q) B. _& e
axes(h2)# |/ D# c& b) I1 L% ^, r$ w5 e. B

8 Z' ]& W1 w* \4 O[x,y,z]=peaks;# m7 Z' z; H5 F  f2 V
/ H1 h8 m4 \$ |) l/ F
mesh(x,y,z)
4 M0 k. g$ D3 T2 h, O( G
* |- T2 }2 k4 aset(h2,'Visible','off')

该用户从未签到

2#
发表于 2020-9-10 15:52 | 只看该作者
MATLAB axis和axes的区别
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 15:49 , Processed in 0.203125 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表