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

了解一下Matlab中的Rectangle对象的用法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-7-16 11:26 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
示例
9 f! B" L) P* Y6 ^5 H" K! [# A# x$ U" m5 L4 ~+ x( S5 k
subplot(221)
0 P5 E0 S: w( o% f) |9 R4 h* l- |# a; F! T9 {
%MATLAB中的函数subplot[1]+ o5 r9 @; |9 E
, p: a0 m' p6 _" X7 e+ U8 G
使用方法:subplot(m,n,p)或者subplot(m n p)。- ~7 ~! r. i! V- u& g

, P5 ~, G8 h* r5 p( w1 `+ Ysubplot是将多个图画到一个平面上的工具。其中,m表示是图排成m行,n表示图排成n列,也就是整个figure中有n个图是排成一行的,一共m行,如果第一个数字是2就是表示2行图。p是指你现在要把曲线画到figure中哪个图上,最后一个如果是1表示是从左到右第一个位置。1 T1 _. w7 e  G" y: r
, z$ t1 W6 U5 n; S7 b5 Q
rectangle('Position',[0.59,0.35,3.75,1.37])
  n9 G, \! M# k2 F9 T& u, f- S) H- V9 y0 [$ Z. `
title('矩形');/ o, a  U* `- ]/ I  C
+ n* y5 c& y+ \, p( x
subplot(222)
* ^! E8 x( }: z
* m  R3 ?. E& A0 }rectangle('Position',[0.59,0.35,3.75,1.37],...
; i* _. \: q! P2 Y4 M' c7 R$ @3 Q3 j! q: N7 G, ]+ p7 A2 t
         'Curvature',[0.8,0.4],...) P; y8 A9 r0 u0 {3 c0 s: I

4 i# X/ B0 k$ c- U        'LineWidth',2,'LineStyle','--')* c" H0 @* t- X4 i
) m/ F- ~2 t+ b3 R0 G1 h9 I
%rectangle函数功能:创建二维矩形对象。
% _/ j. `/ \0 X; n
" z. G. |! p5 U' w, ?! wrectangle('Position',[x,y,w,h])
# J) H. n5 S8 @2 `& l) L
0 p; ~/ n) F0 j- f从点(x,y)开始绘制一个宽w高h的矩形,对坐标轴数据单元指定值。! E6 [8 j( ~: n- x9 C6 ^$ }
" ~2 g% }- {! E% r+ m! @) y
注意,按指定的比例显示矩形,需要设置坐标轴数据宽高比来使得x和y轴有等长的单位。你可以用命令axis equal 或者daspect([1,1,1])。
) J- |5 D; x+ b# o! O6 v4 ]3 f. m/ \6 }0 V' n8 ^6 M
rectangle绘制一个矩形,其默认位置是[0,0,1,1] ,默认曲率是 [0,0](也就是说,没有曲率)。. h% O- Z1 @8 r, h) ~0 L7 X3 W) G3 s

/ ?7 N4 U3 W5 c. ~1 k$ c/ Krectangle(...,'Curvature',[x,y])指定矩阵边的曲率,可以使它从矩形到椭圆不同变化,水平曲率x为矩形宽度的分数,是沿着矩形的顶部和底部的边进行弯曲。竖直曲率y为矩形高度的分数,是沿着矩形的左面和右面的边进行弯曲。x和y取值范围是从0(无曲率)到1(最大曲率)。值[0,0]绘制一个成直角的矩形,值[0,0]绘制一个椭圆。如果仅仅指定曲率的一个值,那么在水平曲率和竖直曲率都有相同的值。; {2 D" K3 l- O( N
0 \. J' u  [4 ^9 H
h = rectangle(...)返回创建矩形对象的句柄。. k% W7 T& \) V6 o9 a( x: f
$ ?: d( ^4 V  _# n& p
备注:矩形对象是2维的,仅仅能在[0 90](i.e., view(2))范围内被绘制,矩形对象是坐标的子对象,被定义在坐标轴数据内。
/ C$ j$ C! s# y- D" x5 B
% n5 x3 T) ~; X& M9 r8 T2 j, Y) S9 Y
1 L1 ?$ V, ?/ o! S0 E& g1 O) @" n2 z; P/ s3 p4 k
daspect([1,1,1])
8 A) V& b# ~2 n; }
  G- a2 W1 s8 e: z7 n9 b%设置坐标轴的纵横比
: g- C2 X2 Z6 o- X) l7 f+ n  c
  }$ x. J; a; G& Z% m! N, ntitle('平滑矩形')
7 h* i) ]5 _1 m( ^- v# E
; b) I7 X! N8 W4 z- {/ }subplot(223)
! ?' }  b; h6 I* l5 {* F1 t. U! B" U: ?& I5 I, {
rectangle('Position',[1,2,5,10],'Curvature',[1,1],...9 [% K8 c" m5 y$ e

. E/ r$ m' i, @' G3 u  Q7 b         'FaceColor','r','LineWidth',2,'LineStyle','--')7 B5 M% S6 i- m% p4 c$ \5 e

$ A" Y, q! d6 J$ Z( n- Ydaspect([1,1,1])%daspect([1 1 1])是设置坐标轴的长宽高之比等于18 S, h2 `" F: S% j
/ I# I, N# d# P
xlim([0,7])) @, ^! b; V! e, Z$ R' m, k; U
' C) \5 t: ^* s/ c$ `1 }
ylim([1,13])
/ d- B1 x  b1 b0 ~; |9 X1 G6 S( R! B+ k6 F, w. i' l1 c4 ^
title('椭圆'). C1 \9 L  h( J3 a9 p& n( j

- c9 x3 }% x5 c+ C%长宽大小不一样。请注意参数'Curvature'的值[1,1]和[1]的效果是不同的
0 `% \8 D, A, N. q' E0 M2 E5 X% r2 }% a0 s' o4 z, t5 Z2 A1 I
subplot(224)( q0 \# A# Q/ x/ c5 ^4 z) E

3 w% E% H6 ]* ?2 O' Nrectangle('Position',[1,2,5,5],'Curvature',[1],...
: d' R4 o- h. f* I; t( `  |% w7 \5 R" o
1 K* b4 g" u& [         'LineWidth',2,'LineStyle','--');6 r7 m+ M+ L! H# n" Y2 r

4 D! _5 D  B9 O6 H% t- o2 U* rtitle('圆形')
1 s0 f2 U% l# m: c0 ?' u
( f1 |/ l0 i  c; I8 z0 h- i* d%矩形对象的长宽都是5,曲率为1
8 o9 t: \! w1 \6 l9 q0 v7 V% b# a( r$ k  S; G$ P
最终生成图像如图
, p  k, c4 Y$ v8 N' ~: R# \% B1 e- J0 R, p

. D: a# i; u* J* P4 U/ X
. r' ~- {. Q: g
4 g% h2 B4 D: Y& V1 U; m# L  X7 ~) {5 B- p
; A- P4 Q+ t/ Y9 t1 d
( ?" Q2 c& T2 P" K

该用户从未签到

2#
发表于 2020-7-16 13:16 | 只看该作者
Matlab中的Rectangle对象
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-24 17:56 , Processed in 0.187500 second(s), 26 queries , Gzip On.

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

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

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