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

MATLAB axis和axes的区别

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
9 ~1 L5 p, y( h& h; v+ R/ Y
axis中文为“轴”之意,在matlab中用于控制坐标轴的范围和样式(颜色等)。5 V$ v! _9 ^! f
# W, z; E2 K' C. m3 ?$ G
axis([XMIN XMAX YMIN YMAX]) 设置当前所绘图像的x轴和y轴的范围。
, _/ m" @# c* Paxis([XMIN XMAX YMIN YMAX ZMIN ZMAX]) 设置当前所绘图像的x轴、y轴和z轴的范围。
4 C) ?* V/ G# r
' K" U; b4 R; u) E; V0 t8 D例子:
1 Q( A! Y, o! I0 N7 u% G
0 o* F& {# V+ x, ]' o>> x = [1,2,3,4,5];% ^, B; N- ]5 x! }% `
>> y = [2,3,4,5,6];
1 B1 ~+ q5 y/ v>> plot(x,y,'o')( }7 _0 R. Q$ ?  U8 Z

" ~2 L7 N3 x5 P  f# d) J+ z% j( z>> axis([0,5,0,6]);  %axis要放在plot之后
- g* j# Q) y. V8 [* j- e! N% P9 z2 ?. c$ {( H. k; k2 s4 Q4 Q! d  K
得到图像
( O+ d9 ?7 E0 g5 ]$ @+ I' S
5 x5 V- q. \' I2 H0 W5 w' e8 c5 g  D+ Y' {- W7 H6 L. o
. C, C0 x9 u5 j7 U% E
axes ★★★★★  y  ~: M- S) q

$ ^# K0 d4 A& M1 R* |3 w 7 W5 ^- S; |( s9 [1 B& H
) V% s$ S- r: ~2 u
功能1 K$ i1 S: Q$ |& A
; e% ?0 l+ n" G5 |% N
创建坐标系图形对象( U% f0 o" F4 a
6 v3 q, \3 K) K9 y# B$ ?
. Q% i# F$ U. o9 `, Y8 a' h" e+ Y( N

  R- [+ x1 `& F8 P- W3 z5 \语法$ z* s4 F: A. Q* Q

, W1 A9 T$ A, H* Q, naxes8 t8 w) }+ Z0 q0 R
axes('PropertyName',propertyvalue,...)3 F0 x3 f% `5 B  s: {
axes(h)
; Y+ K6 |. G9 Mh = axes(...)+ i( X5 u  L: b
  J1 L1 e0 x5 `) C
- C. n4 o7 o# T& S0 n

8 p, [+ \2 U7 S* Q' O% D描述' r( H- Z2 t1 ?" X1 k6 q3 x

( v" l7 b6 A, {. l4 Oaxes在当前窗口中创建一个包含默认属性坐标系
5 [. o% Z0 B( f# W: C- N+ I2 o
% v; d7 \9 r8 \  j  f4 p: U8 r& E% V+ S% Z7 p
axes('PropertyName',propertyvalue,...)创建坐标系时,同时指定它的一些属性,没有指定的使用DefaultAxes**,当然可以在以后使用set/get函数进行设置/读取,坐标系axes所有属性参见附录
/ ^) I" r9 |' S& b- I( T! ?" c8 E+ y4 t

4 ?* X6 k. k: d% C; taxes(h)将坐标系h置为当前坐标系,同时将figure中的CurrentAxes属性设置为h,并且将h排列到children属性中第一个axes位置。默认情况,所有图形函数都是在当前坐标系上绘图! p# x3 i. m% ^: N, _
1 g" B5 L6 a9 P2 b$ X& L1 n5 r+ q
4 I+ Q# I/ G1 K$ v
h = axes(...)创建坐标系时返回它的句柄,方便以后操作
: ~) H$ P; ^1 Q/ F5 h5 T$ N+ c. M; i) L  }

  u" B# S1 P7 n$ ?7 J" s2 c9 B2 z
注意: R, P4 v' r) H: S! m, k, @0 L

( s3 W' b6 b1 P" N当在执行绘图操作时,如果没有axes或figure,MATLAB会自动创建一个axes或figure
5 B! ~7 c3 W, I) \4 I& p0 w) t  s) @/ U9 L
每次创建新axes时,所有的属性都会重置为DefaultAxes**;正常情况每次调用高级绘图命令时,会重置axes部分属性,比如ColorOrder、LineStyleOrder等3 m. h5 q, t6 }/ y1 G

% `$ ^0 J( L* q9 ]& y1 Y * Y* q$ E  Y8 y& i% V

3 E4 y5 ~* W$ p: M; aset(figure_handle,DefaultAxes**,Value)可以自定义axes的默认属性! Q- W& S5 E- G4 u/ C6 ^' r) g4 @

0 G, c  ?6 M4 E0 k 2 ?3 k' g, ^& I6 W

: y7 K: K' Y9 T8 U  A9 ^' Caxes是创建一个坐标系,而axis是对坐标系的简单控制,比如外形、比例等6 x8 E5 |4 `6 c9 y" Y9 c

- G; ~9 t& `  w+ g- d 3 N2 D7 V; B# f8 @5 z

0 t* K7 t/ Y4 b* m& o; ~( `创建时有三种方式直接指定属性,无先后顺序,不区分大小写,效果一致: u$ w" \- G6 |" k" i1 e" ~: W

+ Q2 U2 c) s4 L/ a7 | + T3 `3 [- c; C( F+ F" v

' a! P( J1 @* e+ a, A(1)Name/Value配对形式
9 |' v" L1 Q5 A; \3 _9 ?9 L! }% r
3 w3 b4 |* x& {axes('Position',[0.2 0.2 0.6 0.6],'XGrid','on','XTickLabel',[])# G, U! H' @) s& w, r
3 i2 @( t4 x) a3 F$ ]9 ?# D6 g5 v

- F- T: k+ e; B/ d, U# s/ K. u  i& E- G- l' ]* C6 |6 P
(2)结构体形式
4 z  c0 c# F% G! m( o; _$ ?+ \
( |# O/ I/ v; j  _$ C8 \pp.Position=[0.2 0.2 0.6 0.6];
* M1 c4 F. m/ {
0 v& i' t$ f2 b9 K- l( {- H1 Zpp.XGrid='on';5 k) N( P0 M2 p2 u) y+ G' e) u
, R8 T3 \6 R3 J
pp.XTickLabel=[];1 a- G+ J) H% r7 Y

  R/ Z; @  m5 f7 zaxes(pp)' v8 k4 x8 p2 ^' I

; B' X; k5 {9 E+ H. X; p
* n& d5 k# N( X: V1 i
' Q. H  ~% \( ?3 P# j5 W(3)细胞元组形式
8 @% g5 Y5 u4 p3 N/ K2 k0 ~; J) H
1 X% Y3 D) ^, {3 M: J; H) t  u3 y8 g! LName={'Position','XGrid','XTickLabel'};
- u! M5 I8 i* y; H
+ ?3 e6 w! `' \5 k4 L) }* hValue={[0.2 0.2 0.6 0.6],'on',[]};
) ~+ w# n4 r$ `/ k) m
2 N9 ?8 s0 W( Maxes(Name,Value)0 J/ Q$ i  u4 L; u* k4 k# t0 {& J2 o

) b( l( ^3 U$ S2 w& T, h% e; r
+ v# `# C/ }: `3 q2 M, \& @6 w5 ]3 D2 |+ t, e5 a
实例
* y1 `+ p9 V7 x5 n# `
- o8 h# |2 e+ }. G% 先创建两个坐标系,过程中指定某些参数$ q3 }2 q- |1 s. L! z

1 F( |) f: L9 V8 t# J4 Qh1=axes('Position',[0.1 0.2 0.3 0.6],'Unit','normalized','LineStyleOrder',':|--|-.|-');
6 S* R3 p  w' K6 k
8 y9 `3 i5 X4 Z  Q/ Y8 E3 W% h! i: C6 mh2=axes('Position',[0.6 0.2 0.3 0.6]);5 N! t" b- V1 m8 i& l
2 Y2 V' V7 X+ C# R' o1 V
% 将h1设置为当前坐标系,为绘图准备( |! U4 p; C, a5 z" A( ^3 {
, {" `1 N9 z7 {) o2 A( m0 n4 A! X/ l
axes(h1); P! ]( h) J4 Q' B
. J3 W, ^) q. a- P# {1 D/ p
plot(rand(10,3)) % 即使创建h1时将线型顺序修改了,但由于每次调用plot会将LineStyleOrder重置为'-',故这里是看到的都是实线- s& \1 e* M# A7 ^# R/ N: Q8 [

2 d, a% P6 M, Y/ J5 将h2设置为当前坐标系
" Q' c8 x" I, ^% o$ P4 u4 D  [$ d8 O$ A4 T4 |* E4 V
axes(h2)
! C, I0 S* E* a! A8 q. F
7 H* X3 C( s, R; E& K/ G# W8 M[x,y,z]=peaks;7 ]* ^/ ~# G1 a9 y$ \* Q$ o

* J) B' S0 ^8 \+ B# ~; ~% Imesh(x,y,z)
# ?, O2 h3 a, c1 V4 t) b$ G( @4 D# Q: m. c7 O! }2 a8 b4 e- r- c* `
set(h2,'Visible','off')

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-24 16:19 , Processed in 0.171875 second(s), 24 queries , Gzip On.

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

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

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