matlab学习笔记(7)

2019-04-16 20:27

set(gca,'layer','top') gtext('\\leftarrow第一季度销量') gtext('\\leftarrow第二季度销量') gtext('\\leftarrow第三季度销量') gtext('\\leftarrow第四季度销量')

xlabel('年','fontsize',16); ylabel('销售量','fontsize',16);

实例9:饼图的绘制

function shili09 h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例09'); t=[54 21 35; 68 54 35; 45 25 12; 48 68 45; 68 54 69]; x=sum(t); h=pie(x); textobjs=findobj(h,'type','text'); str1=get(textobjs,{'string'}); val1=get(textobjs,{'extent'}); oldext=cat(1,val1{:}); names={'商品一:';'商品二:

';'商品三:'}; str2=strcat(names,str1); set(textobjs,{'string'},str2)

val2=get(textobjs,{'extent'}); newext=cat(1,val2{:}); offset=sign(oldext(:,1)).*(newext(:,3)-oldext(:,3))/2; pos=get(textobjs,{'position'}); textpos=cat(1,pos{:});

textpos(:,1)=textpos(:,1)+offset;

set(textobjs,{'position'},num2cell(textpos,[3,2]))

实例10:阶梯图

function shili10 h0=figure('toolbar','none',... 'position',[200 150 450 400],... 'name','实例10'); a=0.01; b=0.5; t=0:10; f=exp(-a*t).*sin(b*t); stairs(t,f) hold on plot(t,f,':*') hold off glabel='函数e^{-(\\alpha*t)}sin\\beta*t的阶梯图'; gtext(glabel,'fontsize',16) xlabel('t=0:10','fontsize',16) axis([0 10 -1.2 1.2])

实例11:枝干图

function shili11 h0=figure('toolbar','none',... 'position',[200 150 450 350],... 'name','实例11'); x=0:pi/20:2*pi; y1=sin(x); y2=cos(x); h1=stem(x,y1+y2); hold on

h2=plot(x,y1,'^r',x,y2,'*g'); hold off h3=[h1(1);h2];

legend(h3,'y1+y2','y1=sin(x)','y2=cos(x)') xlabel('自变量X'); ylabel('函数值Y');

title('正弦函数与余弦函数的线性组合');

实例12:罗盘图

function shili12 h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例12'); winddirection=[54 24 65 84 256 12 235 62 125 324 34 254]; windpower=[2 5 5 3 6 8 12 7 6 14 10 8]; rdirection=winddirection*pi/180;

[x,y]=pol2cart(rdirection,windpower); compass(x,y); desc={'风向和风力', '北京气

象台', '10月1日0:00到', '10月1日12:00'}; gtext(desc)

实例13:轮廓图

function shili13 h0=figure('toolbar','none',... 'position',[200 150 450 250],...

'name','实例13'); [th,r]=meshgrid((0:10:360)*pi/180,0:0.05:1);

[x,y]=pol2cart(th,r); z=x+i*y; f=(z.^4-1).^(0.25); contour(x,y,abs(f),20) axis equal xlabel('实部','fontsize',16); ylabel('虚部','fontsize',16); h=polar([0

2*pi],[0 1]); delete(h) hold on contour(x,y,abs(f),20)

实例14:交互式图形

function shili14 h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例14'); axis([0 10 0 10]); hold on x=[]; y=[]; n=0; disp('单击鼠标左键点取需要的点'); disp('单击鼠标右键点取最后一个点'); but=1; while but==1 [xi,yi,but]=ginput(1); plot(xi,yi,'bo') n=n+1; disp('单击鼠标左键点取下一个点'); x(n,1)=xi; y(n,1)=yi; end t=1:n; ts=1:0.1:n; xs=spline(t,x,ts); ys=spline(t,y,ts);

plot(xs,ys,'r-'); hold off

实例15:变换的傅立叶函数曲线

function shili15 h0=figure('toolbar','none',... 'position',[200 150 450 250],...

'name','实例15'); axis equal m=moviein(20,gcf);

set(gca,'nextplot','replacechildren')

h=uicontrol('style','slider','position',... [100 10 500 20],'min',1,'max',20) for j=1:20 plot(fft(eye(j+16))) set(h,'value',j) m(:,j)=getframe(gcf); end clf;

axes('position',[0 0 1 1]); movie(m,30)

实例17:填充图

function shili17 h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例17'); t=(1:2:15)*pi/8; x=sin(t); y=cos(t); fill(x,y,'r') axis square

off text(0,0,'STOP',... 'color',[1 1 1],... 'fontsize',50,...

'horizontalalignment','center')

实例16:劳伦兹非线形方程的无序活动

function shili15 h0=figure('toolbar','none',... 'position',[200 150 450 250],...

'name','实例15'); axis equal m=moviein(20,gcf);

set(gca,'nextplot','replacechildren')

h=uicontrol('style','slider','position',... [100 10 500 20],'min',1,'max',20) for j=1:20 plot(fft(eye(j+16))) set(h,'value',j) m(:,j)=getframe(gcf); end clf;

axes('position',[0 0 1 1]); movie(m,30)

实例18:条形图和阶梯形图

function shili18 h0=figure('toolbar','none',... 'position',[200 150 450 250],... 'name','实例18'); subplot(2,2,1) x=-3:0.2:3; y=exp(-x.*x); bar(x,y) title('2-D

Bar Chart')

subplot(2,2,2) x=-3:0.2:3; y=exp(-x.*x); bar3(x,y,'r') title('3-D Bar Chart') subplot(2,2,3) x=-3:0.2:3; y=exp(-x.*x); stairs(x,y) title('Stair Chart') subplot(2,2,4) x=-3:0.2:3; y=exp(-x.*x); barh(x,y) title('Horizontal Bar Chart')

实例19:三维曲线图

function shili19 h0=figure('toolbar','none',... 'position',[200 150 450 400],... 'name','实例19'); subplot(2,1,1) x=linspace(0,2*pi); y1=sin(x); y2=cos(x);

y3=sin(x)+cos(x); z1=zeros(size(x)); z2=0.5*z1; z3=z1;

plot3(x,y1,z1,x,y2,z2,x,y3,z3) grid on xlabel('X轴'); ylabel('Y轴'); zlabel('Z

轴'); title('Figure1:3-D Plot')

subplot(2,1,2) x=linspace(0,2*pi); y1=sin(x); y2=cos(x); y3=sin(x)+cos(x); z1=zeros(size(x)); z2=0.5*z1; z3=z1; plot3(x,z1,y1,x,z2,y2,x,z3,y3) grid on xlabel('X轴'); ylabel('Y轴'); zlabel('Z轴'); title('Figure2:3-D Plot')

实例20:图形的隐藏属性

function shili20 h0=figure('toolbar','none',... 'position',[200 150 450 300],... 'name','实例20'); subplot(1,2,1) [x,y,z]=sphere(10); mesh(x,y,z) axis off

title('Figure1:Opaque') hidden on

subplot(1,2,2) [x,y,z]=sphere(10); mesh(x,y,z) axis off

title('Figure2:Transparent') hidden off

实例21PEAKS函数曲线

function shili21 h0=figure('toolbar','none',... 'position',[200 100 450 450],...

'name','实例21'); [x,y,z]=peaks(30); subplot(2,1,1) x=x(1,

; y=y(:,1);

i=find(y>0.8&y<1.2); j=find(x>-0.6&x<0.5); z(i,j)=nan*z(i,j); surfc(x,y,z) xlabel('X轴'); ylabel('Y轴'); zlabel('Z轴'); title('Figure1:surfc函数形成的曲

面')

subplot(2,1,2) x=x(1,; y=y(:,1); i=find(y>0.8&y<1.2); j=find(x>-0.6&x<0.5);

z(i,j)=nan*z(i,j); surfl(x,y,z) xlabel('X轴'); ylabel('Y轴'); zlabel('Z轴');

title('Figure2:surfl函数形成的曲面')

实例23:视角的调整

function shili23 h0=figure('toolbar','none',... 'position',[200 150 450 350],...

'name','实例23'); x=-5:0.5:5; [x,y]=meshgrid(x); r=sqrt(x.^2+y.^2)+eps; z=sin(r)./r; subplot(2,2,1) surf(x,y,z) xlabel('X-axis') ylabel('Y-axis')

zlabel('Z-axis') title('Figure1') view(-37.5,30)

subplot(2,2,2) surf(x,y,z) xlabel('X-axis') ylabel('Y-axis') zlabel('Z-axis')

title('Figure2') view(-37.5+90,30)

subplot(2,2,3) surf(x,y,z) xlabel('X-axis') ylabel('Y-axis') zlabel('Z-axis')

title('Figure3') view(-37.5,60)

subplot(2,2,4) surf(x,y,z) xlabel('X-axis') ylabel('Y-axis') zlabel('Z-axis')

title('Figure4') view(180,0)

实例26:柱状图

function shili26 h0=figure('toolbar','none',... 'position',[200 50 450 450],... 'name','实例26'); subplot(2,1,1) x=[5 2 1 8 7 3 9 8 6 5 5 5 4 3 2]; bar(x) xlabel('X

轴'); ylabel('Y轴'); title('第一子图');

subplot(2,1,2) y=[5 2 1 8 7 3 9 8 6 5 5 5 4 3 2]; barh(y) xlabel('X轴'); ylabel('Y

轴'); title('第二子图');

实例86:三次样条插值法

h0=figure('toolbar','none',... 'position',[200 50 350 450],... 'name','实例86'); h1=axes('parent',h0,... 'position',[0.10 0.45 0.8 0.5],... 'visible','off');

x=0:0.2:2*pi; y=sin(x); plot(x,y) b1=uicontrol('parent',h0,...

'units','points',... 'tag','b1',... 'style','pushbutton',... 'string','三次样条插值',... 'backgroundcolor',[0.75 0.75 0.75],... 'position',[20 60 70 20],... 'callback',[... 'y=0,',... 'sy=0,',... 'strn1=get(e2,''string'');,',...

'n1=str2num(strn1);,',... 'strn2=get(e3,''string'');,',...

'n2=str2num(strn2);,',... 'x=n1:0.2:n2;,',... 'i=1;,',... 'for t=n1:0.2:n2,',...

'y(i)=sin(t);,',... 'sy(i)=san(t,n1,n2);,',... 'i=i+1;,',... 'end,',...

'plot(x,y,''b*'',x,sy,''r-''),',... 'axis([0 7 -1.5 1.5]),',... 'legend(''sin(x)'',''N-Hermite插值'')']); b2=uicontrol('parent',h0,... 'units','points',... 'tag','b2',... 'style','pushbutton',... 'string','误差比较',... 'backgroundcolor',[0.75 0.75 0.75],... 'position',[170 60 70 20],... 'callback',[... 'strdn1=get(e2,''string'');,',... 'n1=str2num(strdn1);,',...

'strdn2=get(e3,''string'');,',... 'n2=str2num(strdn2);,',... 'strdn=get(e1,''string'');,',... 'dn=str2num(strdn);,',...

'dd=abs(sin(dn)-san(dn,n1,n2));,',... 'msgbox([''误差为:'',num2str(dd)],''计算结果'')']); e1=uicontrol('parent',h0,... 'units','points',... 'tag','e1',...

'style','edit',... 'fontsize',12,... 'string','1.20',...

'horizontalalignment','right',... 'backgroundcolor',[1 1 1],... 'position',[200 100 40 20]); t1=uicontrol('parent',h0,... 'units','points',... 'tag','t1',...

'style','text',... 'string','误差点:',... 'fontsize',12,... 'backgroundcolor',[0.75 0.75 0.75],... 'position',[160 100 40 20]); e2=uicontrol('parent',h0,... 'units','points',... 'tag','e2',...

'style','edit',... 'fontsize',12,... 'string','1.00',...

'horizontalalignment','right',... 'backgroundcolor',[1 1 1],... 'position',[20 85

40 20]); t2=uicontrol('parent',h0,... 'units','points',... 'tag','t2',...

'style','text',... 'string','第一节点:',... 'fontsize',12,... 'backgroundcolor',[0.75 0.75 0.75],... 'position',[15 105 50 20]); e3=uicontrol('parent',h0,... 'units','points',... 'tag','e3',...

'style','edit',... 'fontsize',12,... 'string','3.00',...

'horizontalalignment','right',... 'backgroundcolor',[1 1 1],... 'position',[100 85 40 20]); t3=uicontrol('parent',h0,... 'units','points',... 'tag','t3',...

'style','text',... 'string','第二节点:',... 'fontsize',12,... 'backgroundcolor',[0.75 0.75 0.75],... 'position',[95 105 50 20]); b3=uicontrol('parent',h0,... 'units','points',... 'tag','b3',...

'style','pushbutton',... 'string','关闭',... 'backgroundcolor',[0.75 0.75

0.75],... 'position',[100 20 60 20],... 'callback','close');


matlab学习笔记(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:公路工程内业资料整理填写及归档范例

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: