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

MATLAB axis和axes的区别

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

$ ^: R9 Z. L. [: d$ i" m- f8 W+ M: n! Gaxis中文为“轴”之意,在matlab中用于控制坐标轴的范围和样式(颜色等)。% U; E$ K& \# c6 a" |, I4 \
' d# ~9 m2 c9 |; |% [% G- k* ~, }
axis([XMIN XMAX YMIN YMAX]) 设置当前所绘图像的x轴和y轴的范围。  ~- Z# i$ K" G1 w& N: s. H1 _( }
axis([XMIN XMAX YMIN YMAX ZMIN ZMAX]) 设置当前所绘图像的x轴、y轴和z轴的范围。
! i. c3 X2 K  W# X! M3 u' a/ c  _& R# `" \2 p" p
例子:
& w7 U8 Y- W. y. D: G3 g" Y2 Q+ g# [6 a: \0 r
>> x = [1,2,3,4,5];: y* l3 k- O, ~( l* \1 G6 z% ]
>> y = [2,3,4,5,6];
, @$ ^9 H( `$ W1 |. [% J0 m>> plot(x,y,'o')
9 [4 m( F& M) Y  \# T( }8 s2 n
& Z5 f8 D: E' ]1 q# d>> axis([0,5,0,6]);  %axis要放在plot之后
; W* r7 ?7 E4 Q5 u' K( Q
% e+ c# ~) l. R8 U得到图像
4 \3 \- a- V. w; c/ ^, g* @  Q& v" G8 V: k6 E; j6 y
, D, Y$ Y* o: m' c( u9 C

0 e% b! b% R# s0 Q1 U& naxes ★★★★★. `$ U# S6 o* w( V
5 |7 h. t; U' R& V- A
8 L9 Q. Y2 C* m# S0 Q
5 h, r& l) C& M/ |2 `6 y. N1 ]
功能' a' H" J/ K9 Z/ _

2 t6 g+ b  o8 r7 ]/ }- u创建坐标系图形对象- }6 a  E% Z4 k  y
) i2 h( G3 h, z3 s
( X) L. A! T. O* m# _- v( h; |

* G8 Z6 W! T, N0 {8 h0 W( j$ p语法
0 E' L- O" I  }$ E6 M) n
8 Q, {; Z' C# v; A# F2 uaxes
# B2 m1 ~, o; ^, ^axes('PropertyName',propertyvalue,...)
! ~! x& o$ ^% x+ r1 H: S3 q$ @axes(h)/ F3 S# \! C/ Z7 H5 C2 q
h = axes(...)
) H( a& i7 o9 L$ Y& X( n6 T- e6 T) ~( v! F* G$ y  P
) h! i, {$ d% X2 _, I$ a

& ?4 Z! H4 R* V4 M5 @. N  e  |描述
+ k& V( [: o' `: W
. h; O9 e+ V$ o5 R$ I- b+ s. Iaxes在当前窗口中创建一个包含默认属性坐标系
4 w1 I. U. j, _+ j+ @. K5 D+ o1 B* a2 L6 \( p1 X8 ^% X

. t; g' T5 }* {; j5 Z4 x$ T7 a$ O* uaxes('PropertyName',propertyvalue,...)创建坐标系时,同时指定它的一些属性,没有指定的使用DefaultAxes**,当然可以在以后使用set/get函数进行设置/读取,坐标系axes所有属性参见附录! u- t, W0 Y8 U) T8 _! `$ f0 ^
! y& F4 F, Y8 N) T7 a
" ^) I5 j7 l' ~( a6 m) n0 L
axes(h)将坐标系h置为当前坐标系,同时将figure中的CurrentAxes属性设置为h,并且将h排列到children属性中第一个axes位置。默认情况,所有图形函数都是在当前坐标系上绘图- J4 S4 T2 V; }3 n

: n0 T5 A& B# b4 w# g4 X, \; U9 u
h = axes(...)创建坐标系时返回它的句柄,方便以后操作# S( t1 E, g$ ~* t

9 y+ W( a' y/ t$ k 7 V) s7 F) \2 [- b+ V! P  k  @
" c) |. E/ l( G! T: c
注意: J- {4 c# m6 V6 M# \) U8 w) I' C* Z: p, H

. l: K% y' q1 V) ]当在执行绘图操作时,如果没有axes或figure,MATLAB会自动创建一个axes或figure
* o) e* i/ m2 _% S* O+ P; O$ U; ~, w+ O$ O" x6 x& w
每次创建新axes时,所有的属性都会重置为DefaultAxes**;正常情况每次调用高级绘图命令时,会重置axes部分属性,比如ColorOrder、LineStyleOrder等& q- ]- V  @  W4 d4 W& \
, z3 i* v. a% v& i
* z1 b# M  G( c' @+ s/ a5 @, A7 P/ z
. S& x1 y% v9 v0 g% w' {
set(figure_handle,DefaultAxes**,Value)可以自定义axes的默认属性
  I3 ~* a% [2 t( w, `
( ^% z# \2 V9 h5 E2 r5 `
8 Y; x* u3 w" R: L! B0 e. U+ ?7 e$ v
axes是创建一个坐标系,而axis是对坐标系的简单控制,比如外形、比例等
' U5 v) B' N  b4 f/ F9 ]5 j# `$ o, ^
- }! ]" Y8 A' A
$ _5 D# @# [9 G% c# |5 I9 B4 a8 l
6 ~! b  q, d. h/ Q: W' n创建时有三种方式直接指定属性,无先后顺序,不区分大小写,效果一致" e: m6 ~$ B" V  C5 o' R0 @

$ m7 D- N5 D6 c- k8 T/ D  [
6 i6 D4 p# g6 D3 e8 x! a, X+ @/ L
0 H: C+ Q: d+ Y7 M(1)Name/Value配对形式  D( Q+ D* E. q$ I) H  F0 E
: U0 v/ F! w1 T0 x
axes('Position',[0.2 0.2 0.6 0.6],'XGrid','on','XTickLabel',[])
. O/ Z* h+ m  v) {0 Y# b$ Q# Y9 J3 b8 Z$ n+ R

) @- N. @7 l* K% t% l+ D. e/ ?. _( q' U2 g2 I! u, T( V4 w
(2)结构体形式8 ~5 C/ X' ~6 _* O( F* y& r

2 ^: T# s( u3 g: F$ y, V& B7 upp.Position=[0.2 0.2 0.6 0.6];# ^0 p% ]8 I, M% w8 d

! s6 T0 ~6 a" e/ C: H  d% @( @pp.XGrid='on';
% C) |( c+ c8 t0 D. P9 v8 }) N! y4 \
pp.XTickLabel=[];
; F# [1 k2 ]3 p& O8 Z/ `) Z/ E' @
axes(pp)
3 K: {( E+ T9 [
9 Q# |/ }( {/ o - x* m% J+ m( K: R7 h1 w

% k  F4 ]5 `" Q) Q; M+ l7 Y4 Y(3)细胞元组形式$ B) ]6 V& m. z# v; o
1 f) P: j& t; t
Name={'Position','XGrid','XTickLabel'};& H/ J; i- X' B, z# U1 b

; Y& C; B0 }$ y# N6 i0 u7 A/ |# HValue={[0.2 0.2 0.6 0.6],'on',[]};! P& s2 D- |3 \8 K( _+ Y* J

+ u' _7 `- i. Paxes(Name,Value)$ O+ S$ X$ i6 {

) {+ W& B- q& R6 ~' u5 L& F
: I. V1 N0 {9 l- ?4 ?! v& Y0 ]- q9 n! s) S6 D) |0 e6 s  y6 W
实例
) }& A2 O& u% A2 Z. L! {8 _; O) Y& g9 A! @5 z
% 先创建两个坐标系,过程中指定某些参数
' ]5 t7 d+ r, ?/ s% }+ ]1 \8 K# g1 u1 U% M5 y. w2 _* @
h1=axes('Position',[0.1 0.2 0.3 0.6],'Unit','normalized','LineStyleOrder',':|--|-.|-');
! m3 M& }4 |7 s& r$ }! G+ i4 H6 [: M; G& O6 v) q$ Z) E; {6 n0 w
h2=axes('Position',[0.6 0.2 0.3 0.6]);
1 u0 w9 J: o1 M& P! l" ]; k" p" {. y# S! d) l
% 将h1设置为当前坐标系,为绘图准备
" Q6 ?7 Z, h( B5 U
/ ]8 }, q# I0 ~+ l2 d( S6 K9 iaxes(h1)
' L# D( s" k! S; B' H+ v7 V$ ~" M6 y! a% u* r5 n" |& A
plot(rand(10,3)) % 即使创建h1时将线型顺序修改了,但由于每次调用plot会将LineStyleOrder重置为'-',故这里是看到的都是实线
4 u- x! R- X7 B( _* O0 s. Z$ o7 f! x
5 将h2设置为当前坐标系9 p0 J8 n7 k0 c7 Q8 ?
+ d" T) N: ]- L+ u0 Y
axes(h2)5 H5 v* a9 U3 v. H

! V8 l+ {# h0 H9 s. h[x,y,z]=peaks;+ ~0 c! ], t. q) k, j3 ?( M* P" }1 ~
" e$ I7 N+ l4 k& z5 ]
mesh(x,y,z)3 h* O! N2 n3 ~9 ]

3 u- p  B$ L/ z8 v, Iset(h2,'Visible','off')

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-27 13:57 , Processed in 0.093750 second(s), 23 queries , Gzip On.

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

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

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