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

MATLAB源程序代码分享:MATLAB实现在圆上随机取四个点并绘制线段

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

- C' ]- f8 d1 z# H; pMATLAB源程序代码分享:MATLAB实现在圆上随机取四个点并绘制线段
2 U1 n# E, `# c7 |! q%% 根据圆的参数方程, 计算圆上点的坐标, 并绘制圆
8 l: h8 D, L7 M( zclear;clc;close all
4 O7 u+ U& [' b* B3 _0 O$ Yr=10;               % 定义圆的半径
, d$ H( l# X- N6 btheta=0:0.01:2*pi;  % 角度从 0 到 2*pi
/ u& Y9 x' w3 A2 K! YN=length(theta);    % 计算数据点的个数 N
$ L: d2 B& w( T9 t- R' C# }- \x=r*cos(theta);     % 圆上点的横坐标 x
# R' E- e& J7 b9 Oy=r*sin(theta);     % 圆上点的纵坐标 y
, f$ A  b% L, }+ ?9 r/ x
8 M" H( o8 c0 y6 B# ^, Dfigure/ E3 h& _8 f8 B1 b/ c: W
set(gcf,'units','normalized','position',[0.2 0.2 0.6 0.6]);  % 设置 figure 窗口的位置和尺寸
. d$ B: O# R3 k- k! M! Wplot(x,y)           % 绘制圆% u  \7 c* Y( C6 h9 B- f
hold on
/ `$ u3 F. Y7 Y5 p1 D4 iaxis equal
, U" n3 l" d) A  B. W( O( H; Z& j- }+ c5 S$ K7 \! Q! \+ E3 r
%% 在圆上随机取四个点, 并得到这四个随机点的坐标值
& x  \3 t& X& qnum=ceil(N*rand(4,1));    % 在 1~N 里随机取四个整数  O* C! ?. d- i; g
num=sort(num);            % 将这四个整数按照升序排列: v+ R7 T0 m; R* w! @
points_x=x(num);          % 圆上四个随机点的横坐标1 ?% t6 l1 H! i
points_y=y(num);          % 圆上四个随机点的纵坐标
1 K( n* d5 ]0 u6 I8 O8 fscatter(points_x,points_y,'r*')              % 将这四个随机点, 在圆上用红色的星号标记出来5 T' f; w& |/ B% K. v$ V/ X
text(points_x,points_y,{'A','B','C','D'})    % 在四个随机点的旁边, 显示 A B C D 字符
( f6 i0 k6 }1 w6 i
  w. Q9 O) E- i( d; h$ f6 jA=[points_x(1),points_y(1)];  % A 点的横坐标值和纵坐标值4 L( l+ t. P) j; A3 }  ]; e% T
B=[points_x(2),points_y(2)];  % B 点的横坐标值和纵坐标值4 \7 ?% c4 X6 T) L: |
C=[points_x(3),points_y(3)];  % C 点的横坐标值和纵坐标值$ F% k/ s- N( A) V9 ?
D=[points_x(4),points_y(4)];  % D 点的横坐标值和纵坐标值
# _3 ]0 G8 l4 B( @
4 ]. Y: X( k& u, k5 ~( h%% 绘制四个随机点, 两两之间的线段5 E! N8 Y/ L  G& @
plot([A(1) B(1)],[A(2) B(2)],'r--')    % 绘制线段 AB
  |6 ?/ g7 w1 J$ _8 s2 P7 w1 \6 W4 A! lplot([A(1) C(1)],[A(2) C(2)],'r--')    % 绘制线段 AC( L; V2 y- j9 c  ?9 P
plot([A(1) D(1)],[A(2) D(2)],'r--')    % 绘制线段 AD
' a6 n/ ?/ w. z# f4 ~& U; ]8 Wplot([B(1) C(1)],[B(2) C(2)],'r--')    % 绘制线段 BC, o; y( B- `6 d
plot([B(1) D(1)],[B(2) D(2)],'r--')    % 绘制线段 BD! R, o: P. X  a1 @' b$ Y
plot([C(1) D(1)],[C(2) D(2)],'r--')    % 绘制线段 CD

该用户从未签到

2#
发表于 2020-3-16 18:43 | 只看该作者
MATLAB实现自定义的牛顿插值。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-24 12:47 , Processed in 0.140625 second(s), 24 queries , Gzip On.

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

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

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