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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
1 m: b" @8 w7 z4 E
目前存在的一些问题:6 r* h- ?1 s* V, T0 r4 _; A
1.第一题的两个图像无法重叠
% ]% Q6 Z% e) e2 }2.最后一个题的第一个图是六瓣,而我写的是八瓣
! \; h0 N. \5 c0 g/ M感谢张同学给我指出来,目前我正在思考解决方法' G9 N* \0 m2 i4 Q3 l' m* Y
第一个的话我以为把框缩小就可以重叠了,但是今天试了一下还是分开的,还没想出来怎么实现能够通过缩小框让他们重叠
# {7 @& f: ~9 U$ {: v9 s第二个我一开始以为是玫瑰线,但是k是偶数则有2k个瓣,k是奇数则有k个瓣,所以按道理不存在六瓣玫瑰线,仔细一看发现,这个不是玫瑰线,而是其他什么图形,但是我不知道函数,所以无法写6 O. f7 F. h1 G* J$ e
希望有其他同学大佬能够解决一下,还有最后一个图形的画法我也不会,主要是函数的问题
2 x4 o1 y: R8 [( S+ j9 o( V5 w; K5 j$ q! H3 `. N
一、实验任务和目的
& T" S( p* N$ ]3 L
  • 掌握Matlab的句柄图形的继承。
  • 掌握Matlab的二、三维画图函数的用法。
  • 了解Matlab的特殊二维绘图函数和隐函数绘图的方法。+ T; u- Q  h0 I7 t* b8 v  Z" w( @

+ Y  @" O  X; p二、实验内容( ?* r9 H7 L/ T( N* D1 i
1. 画出如下图形
5 C% ^2 U/ K1 P) l
0 S2 d9 X7 P4 a% n  ^( O3 K8 l" N! j+ c
这个怎么说呢,明明就是个**,第二个图形是cosx?1 c7 g) r5 [( R/ }
而且matlab有现成的gui可以对图形编辑,为什么非要用代码做出来?
( s' S, C2 E+ Y/ v2 x+ G- J我就是先画个大致轮廓,然后用matlab里边图形编辑做的& o5 `$ o, \0 x7 D! E) r  S
) P- B! P3 }6 y4 n6 D3 s! k& Q
  • 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)->');
    8 V$ Z. G7 `* r  `

* @/ T& ]; t" J( t7 j" Z+ o4 `
9 x( k9 }0 `: T* x0 I" a代码结果/ M& I% W0 f, ]8 Q3 h2 I& ^
, k" G- v; {% t0 G  s; Y
5 V$ w5 n. x9 [6 ?6 t6 N2 L
然后我直接用图形编辑器,上色加粗移动说明文字加箭头都是分分钟的事啊,而且matlab里面有个固定的就是x轴范围显示默认为int,所以要是指定2*pi的范围,x轴还会显示10,那又要求不能显示十,那只好通过编辑器对x轴范围更改,我改成7.9就ok了,要是直接用代码,我是实现不出来: c- g3 w/ W3 y
" k8 k5 @( h$ ^5 t2 i

9 L) Y1 l( E# Y7 \+ h( K! b* P
5 `% v9 U) @- a8 I4 w9 t1 O' i2.画出以下图形
5 [9 y; X% Q) d8 T8 F! R! N) B $ m1 ~% l& p: G3 V: [! r

/ W9 J& p$ {( |( t! X; {
  • 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('八边形');( [' l2 F' N1 V; X  p& M9 G

; ?! n5 W! ?7 s+ _% f. R
' X' W( x' [' {( |0 B) M) k( ?. X 8 ~9 B( s! W* g9 L& \
. J* b1 C. H; V( j

2 k; v4 r/ x, n; B& v
  • 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');
    ; `. W+ e) _0 h, Q

' _$ w; p. w% s8 z% c1 |0 o( w3 C5 F9 s- ?- q2 ~# l  I
7 D5 E  X0 y2 L: u0 @
1 f8 F" Y& t: C$ s

  n. x( i! z: m8 `+ Q9 T" H+ R. u  A& Q
4.画图形& n4 D4 u9 K" c$ Q8 N; \
0 ?! o/ c3 |+ `6 Z
- H/ a, f  h$ j+ F
图1:0 U/ |+ a3 g$ u8 K& J

( O7 u# y( T" Y0 k' j
  • t = 0 : 0.01 : 2*pi;
  • polar(t, sin(2*t).*cos(2*t))
  • % B4 T, p. B$ S2 Y

7 B* C5 L! p- |$ N" b$ L0 o) j% R$ r5 r3 q* n* z
图2:
$ B  H5 Z- J2 _+ ]5 y2 j4 T. o3 F% w* {1 t: h& [
  • ezsuRF('u*sin(v)','u*cos(v)', '4*v',[-2*pi,2*pi,-2*pi,2*pi])" r8 [, k2 r: c  L7 c
8 h- V$ r6 R# O  t" D/ e
& g) h# f9 `! K3 p$ L: o& T

6 t. r9 R3 m6 \3 {( h! i图3:
1 D$ C& c, G( p3 `  n; A8 z# T1 N) h, W/ [, I/ J% k6 a
  • 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');( ^, R' m  ?  r' v1 j; r

' ^% J2 }* C0 l+ g! R; |( H4 A7 c6 g$ B1 a* i; i# L2 V
图4:
2 h6 u5 [9 y2 u
7 R# z! `1 a  x6 B: M9 Q. b
  • 不知道函数不会画鸭1 v+ I4 d2 M) E7 G
) R9 v6 N7 L) @, {# {

3 N" b2 M. y+ G9 Q. L: b8 Y* ~7 L+ J+ b0 P

" Y( |" a5 T. _+ e! l" [  P
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

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

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

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

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