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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

( }/ Z2 e7 H! Q) H目前存在的一些问题:
" v2 M  ~) W6 s  v3 @1.第一题的两个图像无法重叠
/ o' ^+ V2 t1 e  c2.最后一个题的第一个图是六瓣,而我写的是八瓣3 c9 M5 t7 w) w4 U6 a# c
感谢张同学给我指出来,目前我正在思考解决方法7 `! F- ^9 l8 V' C/ j  [, |' U
第一个的话我以为把框缩小就可以重叠了,但是今天试了一下还是分开的,还没想出来怎么实现能够通过缩小框让他们重叠7 U# K! Q3 @9 O9 R; D! M
第二个我一开始以为是玫瑰线,但是k是偶数则有2k个瓣,k是奇数则有k个瓣,所以按道理不存在六瓣玫瑰线,仔细一看发现,这个不是玫瑰线,而是其他什么图形,但是我不知道函数,所以无法写
* E3 i$ n3 h; a! u  o% j希望有其他同学大佬能够解决一下,还有最后一个图形的画法我也不会,主要是函数的问题
" {/ S; Y  k! x8 p5 P! E; U
  C; d  A- K" Y6 R  a% N& e1 R一、实验任务和目的

0 Q$ m8 H" j  s
  • 掌握Matlab的句柄图形的继承。
  • 掌握Matlab的二、三维画图函数的用法。
  • 了解Matlab的特殊二维绘图函数和隐函数绘图的方法。# n6 ?) R, x3 o5 I* F% l3 G$ i0 D* P
2 K5 P4 K, r! @2 {: o3 t4 a0 O0 A
二、实验内容. p) ?4 P4 ^6 L& E) h; r
1. 画出如下图形9 w$ R: [' ?3 l+ C, q
1 x1 m/ b8 W" x: \$ ^( G$ p

, ^. p- f% Q1 \; m5 |* a这个怎么说呢,明明就是个**,第二个图形是cosx?3 i, w* C/ n  n/ P" I0 C, x
而且matlab有现成的gui可以对图形编辑,为什么非要用代码做出来?
2 H- Z9 B$ F; j) C0 P$ p1 V' h' a$ U我就是先画个大致轮廓,然后用matlab里边图形编辑做的
! t. X3 c1 K. s9 _& a
  u/ c# t# R+ F
  • 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)->');6 d; t0 L0 h2 c" u

. \7 [  m/ Z+ r% ?3 ]+ T5 k; N5 ^, K8 }# Y9 _& {# b% d
代码结果
% P% H9 v, J& |0 L1 b, ]- I' k ) E0 Q# M8 N9 V7 H2 c

9 O1 k, |& F9 L% V$ W然后我直接用图形编辑器,上色加粗移动说明文字加箭头都是分分钟的事啊,而且matlab里面有个固定的就是x轴范围显示默认为int,所以要是指定2*pi的范围,x轴还会显示10,那又要求不能显示十,那只好通过编辑器对x轴范围更改,我改成7.9就ok了,要是直接用代码,我是实现不出来
. A# V9 u& X) o: D4 |2 o8 }
/ |$ ]* {% M; Z$ y. Z0 P+ P5 Z. W, a
! A6 j2 Q: L, |, y) W3 \: ~
: s$ X0 N8 J, `9 p& g+ ~" {) n) f$ O2.画出以下图形
! ~  g6 [" z' C, S0 {" E# _% d " G- @  d$ K& m+ D

1 N$ I; m+ B9 K2 a1 L: z' z
  • 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('八边形');, q- ^# ?) C2 ]* K& d! h+ V
& g1 ?& c5 [$ l/ N% H+ t9 G

5 _  j. q& d& [$ B8 n ; b5 C" Q0 O0 _

7 ^" ]: v/ ^# o3 h4 O6 I& q+ p! f! |( ^! V- R" q
  • 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');: Y" V- t5 ]3 I! p# ~/ K! ]
% e# X3 A. h- R; }

2 F: e) @. ^" }( s% K
! y1 P. b, S5 R. Q( Z1 T+ b! T 5 Z$ w% r/ H2 h/ B" @

6 K: W: N6 g' [. x! j) k! E& ]# b: q9 {
4.画图形
, z2 D9 E7 I* U  x8 c+ w1 v1 Y7 I $ l* T' m8 a4 v) s7 V2 D, w7 c4 s
3 l& \% W$ i8 l: T9 A& ~' Y9 H
图1:
5 K: P3 \, k; V; Q& ?
5 [4 A/ o+ _0 c
  • t = 0 : 0.01 : 2*pi;
  • polar(t, sin(2*t).*cos(2*t))
  • : M3 x8 Q  n" d: r
" o# m- _9 B# k0 z
- x3 l% r7 }) n7 Z1 O" ]7 U
图2:
, `5 A: x* J# b- N! S' t- F
' ?/ `7 d9 K- E2 A
  • ezsuRF('u*sin(v)','u*cos(v)', '4*v',[-2*pi,2*pi,-2*pi,2*pi])/ j# O0 y: ]+ r. `

' m5 b2 d& _1 b% ?% G8 K( r% N7 e( B$ Y0 [5 P1 p$ K% F* @

8 H7 ^- p6 T5 M' ?) V图3:
  L5 z& V& b$ c7 Z+ P0 B. h4 ~" ?% t+ X! E& b
  • 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');
    ( P" Q5 a3 q  Z6 v

' R% p3 n( h) V% k- }* ~. |* ?* Z- L$ A+ ]3 C- E
图4:
0 Z9 b4 W; x" [! [& R7 ^0 D/ ?& Z# o  o, v  y
  • 不知道函数不会画鸭0 L1 u6 ]4 e" {7 ]5 n# o

4 A9 U) Y* S: q% K& {# r, _4 M, E! ]+ i1 G7 M1 n2 m* o
! A/ v& l/ i) z1 c" W; L

9 j# f+ g( R8 |% r0 E, |6 ?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-23 22:01 , Processed in 0.156250 second(s), 26 queries , Gzip On.

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

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

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