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

学习一下用matlab进行图形绘制

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-12-19 09:49 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
+ B9 Z( j) y  c
目前存在的一些问题:
8 o% D7 E* G' y' g1.第一题的两个图像无法重叠
2 f- S% }2 B1 I( W* C2.最后一个题的第一个图是六瓣,而我写的是八瓣
' p5 V; y" x" t9 b% c9 v; }3 Z感谢张同学给我指出来,目前我正在思考解决方法9 X, M' \# v* h  Q: a  t% E
第一个的话我以为把框缩小就可以重叠了,但是今天试了一下还是分开的,还没想出来怎么实现能够通过缩小框让他们重叠
2 L6 q# G# \+ R. |  j2 C8 E第二个我一开始以为是玫瑰线,但是k是偶数则有2k个瓣,k是奇数则有k个瓣,所以按道理不存在六瓣玫瑰线,仔细一看发现,这个不是玫瑰线,而是其他什么图形,但是我不知道函数,所以无法写; \) X9 f7 L$ c
希望有其他同学大佬能够解决一下,还有最后一个图形的画法我也不会,主要是函数的问题
2 `# d& P- u0 n0 [8 n0 m- t# Q& i& M3 X* D& L
一、实验任务和目的

1 w. b7 \; @! ]7 W/ G# x
  • 掌握Matlab的句柄图形的继承。
  • 掌握Matlab的二、三维画图函数的用法。
  • 了解Matlab的特殊二维绘图函数和隐函数绘图的方法。
    4 l4 [* `1 m; C7 Y6 Y

" K8 U, \, e4 x8 h) k6 `二、实验内容1 n: o/ m' B/ ~7 c
1. 画出如下图形
) v! p: \% t  f
: f" [; r% i) V( c7 e2 f# w( l2 g( Q* e* Y, F! B
这个怎么说呢,明明就是个**,第二个图形是cosx?
  D9 f) C4 @7 C; U8 ~  o% ~. K而且matlab有现成的gui可以对图形编辑,为什么非要用代码做出来?
% n  }0 d0 V1 \! a5 D我就是先画个大致轮廓,然后用matlab里边图形编辑做的
8 z& g) I. B0 |& e' F9 k$ Y! B4 b  [& o2 ^9 d
  • x=-2*pi:pi/100:2*pi;
  • y=sin(x);
  • subplot(2,2,2);
  • plot(x,y,'--k');
  • title('plot of cos x');
  • xlabel('x');
  • ylabel('sinx');
  • text(-6,-0.8,'Text string 2');
  • subplot(2,2,3);
  • plot(x,y);
  • title('plot of sin x');
  • text(-2*pi,0,'min(x)->');: L$ p* G* Z# j5 B+ r

0 C& j7 K( K* N9 O1 A0 I! A9 g
/ J, k! k- U0 v7 x代码结果! [! g, \# P( ~3 t3 E9 r

9 ?4 f! V: w0 T5 ?0 S- n
4 T5 H) S1 k' o( p; x6 m  V% d8 @然后我直接用图形编辑器,上色加粗移动说明文字加箭头都是分分钟的事啊,而且matlab里面有个固定的就是x轴范围显示默认为int,所以要是指定2*pi的范围,x轴还会显示10,那又要求不能显示十,那只好通过编辑器对x轴范围更改,我改成7.9就ok了,要是直接用代码,我是实现不出来8 l; [( O- y; X1 g

- z$ q" ^1 q+ a+ t) C( P- j! ^
& z: D$ i" j/ Q. t% X4 X" r" n
% b+ U% V( t+ R2.画出以下图形; B' {" b7 g5 e
/ b( `0 c* b) L8 ?& n
5 s/ F2 H$ z" I/ \* u  u
  • subplot(3, 3, 1);
  • f = @(x)200*sin(x)./x;
  • fplot(f, [-20 20]);
  • title('y = 200*sin(x)/x');
  • subplot(3, 3, 2);
  • ezplot('x^2 + y^2 = 1', [-1.1 1.1]);
  • axis equal;
  • title('单位圆');
  • subplot(3, 3, 3);
  • ezpolar('1+cos(t)');
  • title('心形图');
  • subplot(3, 3, 4);
  • x = [10  10  20  25  35];
  • name = {'赵', '钱', '孙', '李', '谢'};
  • explode = [0 0 0 0 1];
  • pie(x, explode, name)
  • title('饼图');
  • subplot(3, 3, 5);
  • stairs(-2*pi:0.5:2*pi,sin(-2*pi:0.5:2*pi));
  • title('楼梯图');
  • subplot(3, 3, 6);
  • stem(-2*pi:0.5:2*pi,sin(-2*pi:0.5:2*pi));
  • title('火柴杆图');
  • subplot(3, 3, 7);
  • Z = eig(randn(20,20));
  • compass(Z);
  • title('罗盘图');
  • subplot(3, 3, 8);
  • theta = (-90:10:90)*pi/180;
  • r = 2*ones(size(theta));
  • [u,v] = pol2cart(theta,r);
  • feather(u,v);
  • title('羽毛图');
  • subplot(3, 3, 9);
  • t = (1/16:1/8:1)'*2*pi;
  • fill(sin(t), cos(t),'r');
  • axis square;   title('八边形');
    9 e( N0 c3 C4 w0 \4 M8 T2 U

$ ~- u; V7 |7 \8 U- j! m: F
2 @% Q% L' J. G/ \9 L, }8 x 0 N8 C  P; h) u! m2 M" J  {: h
" C6 j: T9 `0 C8 x" g& j2 k

, n; Y6 f* @" \( }( i
  • x=-3*pi:0.01:3*pi;
  • for i=1:length(x)
  •     if(x(i)==0) y(i)=1;
  •     else y(i)=sin(x(i))/x(i);
  •     end
  • end
  • plot(x,y);
  • set(gca,'YGrid','on');! R2 x& [0 ~. r
1 h( V! A" y3 m8 I6 B
  t- v) \$ V, w0 I2 g: F

" w  C' k( j' D4 j1 |  m & s6 Q' n" Y: z4 |" V
% a1 s, w- i! ]* m

% L0 ]. v% L0 _- B4.画图形' i2 Q$ F: r" M
$ Y. l" i0 j: I8 V* |: T6 X/ L+ _4 v
! ?2 \- @& L7 a
图1:
8 {' i0 Z8 `9 M: W, {, C! `8 S/ l1 c8 }3 n- F' X+ o- B
  • t = 0 : 0.01 : 2*pi;
  • polar(t, sin(2*t).*cos(2*t))

  • 6 H% G, X3 w; {/ z
6 L) E5 W" j& i7 J9 m

6 f9 H( l2 b1 i* k$ |% Z( D图2:
; R! @9 s1 ~! _. d+ d
( d7 `" z+ f# Q1 ]2 {" Q  s/ J
  • ezsuRF('u*sin(v)','u*cos(v)', '4*v',[-2*pi,2*pi,-2*pi,2*pi])* ?& C3 \8 Z  o6 ^6 S# K
5 O; F- r/ g; k! A9 s
$ Z7 |5 c( ^5 ?3 {5 {

$ g; {( @- K: ^: U& {' d- u图3:
$ H' w0 Z+ {/ n% ?0 L  ^2 X4 q1 t/ O' L* X6 c& k! S
  • t=0:pi/20:2*pi;
  • [x,y,z]= cylinder(2+sin(t),100);
  • surf(x,y,z);
  • xlabel('X'); ylabel('Y'); zlabel('Z');
  • set(gca,'color','none');
  • shading interp;
  • colormap(copper);
  • light('Posi',[-4 -1 0]);
  • lighting phong;
  • material metal;
  • hold on;
  • %plot3(-4,-1,0,'p','markersize', 18);
  • % text(-4,-1,0,'光源','fontsize',14,'fontweight','bold');
    5 E$ U& `: z8 e2 w* ]
8 r/ Q; x; A, j: R
' z  g+ a& L7 S9 i
图4:! {9 J8 i1 `! I; O0 b: e$ L
# V& y" _2 ]5 L5 K* `. L
  • 不知道函数不会画鸭7 W2 ~7 D: u& r7 @: c1 _

1 X+ E7 @9 }9 Y; N  Y5 l6 q
% T/ i6 |( }& H: E" l8 C% o1 {+ h' {# J7 L

) }6 v% b) W) p- s9 x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-31 14:21 , Processed in 0.156250 second(s), 26 queries , Gzip On.

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

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

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