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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

; b2 @2 v) l! B+ {+ O目前存在的一些问题:/ M; J: {* J$ e2 l4 [
1.第一题的两个图像无法重叠0 g# m7 t' Y+ J! F
2.最后一个题的第一个图是六瓣,而我写的是八瓣
) }% _* E7 E2 z4 n, F  y/ ]& J感谢张同学给我指出来,目前我正在思考解决方法
6 I9 x' l7 p7 V; B, h6 m第一个的话我以为把框缩小就可以重叠了,但是今天试了一下还是分开的,还没想出来怎么实现能够通过缩小框让他们重叠
. y8 r  z0 g, |第二个我一开始以为是玫瑰线,但是k是偶数则有2k个瓣,k是奇数则有k个瓣,所以按道理不存在六瓣玫瑰线,仔细一看发现,这个不是玫瑰线,而是其他什么图形,但是我不知道函数,所以无法写
$ @* _& D1 A4 G/ S. a! u希望有其他同学大佬能够解决一下,还有最后一个图形的画法我也不会,主要是函数的问题
% k) m6 {) O- Z" W$ B  ~6 V, B- t
一、实验任务和目的

- ]# j+ r9 [7 ]. H1 J2 i* E
  • 掌握Matlab的句柄图形的继承。
  • 掌握Matlab的二、三维画图函数的用法。
  • 了解Matlab的特殊二维绘图函数和隐函数绘图的方法。9 F1 [8 M8 a- a. e. T

* s+ W: E9 M: z& |* I二、实验内容5 C. l4 X' d9 ]
1. 画出如下图形
5 x* l& K  R- Z# c8 _- [ & u( V7 f. g) i' X( h; x3 K# h* I( l

- @6 R! O. W4 v% g0 h# P这个怎么说呢,明明就是个**,第二个图形是cosx?3 G9 b% h& H4 G0 v
而且matlab有现成的gui可以对图形编辑,为什么非要用代码做出来?
& y- m6 Y9 [( A% R% r我就是先画个大致轮廓,然后用matlab里边图形编辑做的0 K' I3 U% R( i

# K( W3 C. l( T$ T7 ]- d3 e- _' S
  • 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)->');" w) q$ }8 D  }
4 l- t! T% g$ ]) q* s( a$ Q- `

2 @) u+ l  B9 c$ n代码结果, I+ [4 T! ^5 s  u  N) S# R% w

: x6 P; o4 b) F* `8 r# `/ A2 ?: {
' w3 [3 R5 y0 L7 d6 O$ D然后我直接用图形编辑器,上色加粗移动说明文字加箭头都是分分钟的事啊,而且matlab里面有个固定的就是x轴范围显示默认为int,所以要是指定2*pi的范围,x轴还会显示10,那又要求不能显示十,那只好通过编辑器对x轴范围更改,我改成7.9就ok了,要是直接用代码,我是实现不出来, @% P9 w( z; o2 O, I; @
" A* j) |: T$ T3 N% j

9 p7 [( O/ F+ B1 s" p2 l3 m- I* K( z3 E! |0 K* E2 l, n
2.画出以下图形, P, B2 v( Y7 Q6 E# D& v+ }  R

; M6 }; V# Z$ V* U: L/ G, \& ^) S+ g0 D4 M- b2 q- B
  • 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('八边形');; @; N9 C! G7 r5 k* J# g1 E
$ t5 k; {9 P$ v# ^
3 P; a1 q! ?% P# B/ C

% Q- M' Z" [+ R$ G0 B1 r  T; j/ Z6 M8 k: F! _6 I) [; E4 ]

3 ^5 ^5 @7 I8 s3 p3 \/ C1 \
  • 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');
    ! `- M* _5 v0 a! _

/ k- N. X- I! s( U3 t7 A. G  ^# V3 ^; ^7 |! F4 I

* R! q2 T9 n; U; | ( ]& L, ^$ i5 \. l. D) M. w

9 Z; K; ?0 T0 j) U8 P
: A* \- q# y% O, K# L8 k/ V4.画图形: ~5 E, E3 }# c5 z: q4 _# @
0 Q* p& B: I. h5 w2 P' x

. w3 W( E1 x, J图1:
9 k+ n8 u$ s* n3 ~8 |
$ h  j* w4 g" s  T/ _2 `7 M0 y
  • t = 0 : 0.01 : 2*pi;
  • polar(t, sin(2*t).*cos(2*t))

  • ) L$ v, e1 U0 n) c3 \" ~; y/ U

8 F( [5 E- P  ?
: V3 P* z0 |' Q4 h& `; R  [图2:7 O# I1 t+ a- [0 A1 ]3 h
9 t: r" x0 w; `+ T
  • ezsuRF('u*sin(v)','u*cos(v)', '4*v',[-2*pi,2*pi,-2*pi,2*pi])
    ) [6 I, S/ F- i( D  \2 w; t- ^

4 M" o$ m5 l' i' S7 Q$ x" N
6 ]+ N% w& l$ l9 h$ }) A6 y6 X" S6 l: y' t
图3:
& J: O' Z# S- x' u  W0 ]" O& C
9 K( v2 K8 L* x: S/ m
  • 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');/ |3 Y$ \4 q) a/ R. z
0 K/ f% i& A' b- I6 Q6 M6 ]& D

/ Y% {/ Z2 z4 E+ U3 ?* `% |图4:& l% l: ~" [* f8 j+ J7 t6 f* K

0 u3 ]. {3 O7 H2 @$ M' e4 B% s
  • 不知道函数不会画鸭, T6 h! o1 V: P, s. K& L
& ~0 s$ n( m8 `2 n/ X, f9 s1 p8 z

1 z7 r7 q7 Q3 `+ \7 ^2 s
) A: i% T' J/ y- S: @! {# o' _  g
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-5 13:41 , Processed in 0.140625 second(s), 26 queries , Gzip On.

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

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

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