当前位置:文档之家› Matlab图形绘制经典案例

Matlab图形绘制经典案例

Matlab图形绘制经典案例1、三维曲线>> t=0:pi/50:10*pi;>> plot3(sin(2*t),cos(2*t),t)>> axis square>> grid on2、一窗口多图形>> t=-2*pi:0.01:2*pi; >> subplot(3,2,1)>> plot(t,sin(t))>> subplot(3,2,2)>> plot(t,cos(t))>> subplot(3,2,3)>> plot(t,tan(t))>> axis([-pi pi -100 100]) >> subplot(3,2,4)>> plot(t,cot(t))>> axis([-pi pi -100 100]) >> subplot(3,2,5)>> plot(t,atan(t))>> subplot(3,2,6)>> plot(t,acot(t))3、图形样式、标注、题字(也可以利用菜单直接Insert) >> x=0:pi/20:2*pi;>> plot(x,sin(x),'b-.')>> hold on>> plot(x,cos(x),'r--')>> hold on>> plot(x,sin(x)-1,'g:')>> hold on>> plot(x,cos(x)-1)>> xlabel('x');>> xlabel('x轴');>> ylabel('y轴');>> title('图形样式、标注等');>> text(pi,sin(pi),'x=\pi');>> legend('sin(x)','cos(x)','sin(x)-1','cos(x)-1');>> [x1,y1]=ginput(1) %利用鼠标定位查找线上某点的值x1 =2.0893y1 =-0.5000>> gtext('x=2.5') %鼠标定位放置所需的值在线上4、>> fplot('[sin(x),cos(x),sqrt(x)-1]',[0 2*pi]) M文件:myfun.m内容如下:function y=myfun(x)y(:,1)=sin(x);y(:,2)=cos(x);y(:,3)=x^(1/2)-1;再运行:>> fplot('myfun',[0 2*pi])同样可以得到下图5、>> [x,y]=fplot('sin',[0 2*pi]); >> [x1,y1]=fplot('cos',[0 2*pi]); >> plot(x,y,'-r',x1,y1,'-.k')>> legend('y=sinx','y=cosx')6、>> x=[-2:0.2:2];>> y=exp(x)-sin(x);>> plot(x,y,'-or','linewidth',2)7、画出y1=6(sinx-cosx),y2=x2^x-1的图形>> x=[-3:0.1:3];>> y1=6*(sin(x)-cos(x));>> y2=x.*2.^x-1;>> plot(x,y1,'-r',x,y2,'-.k','linewidth',2)8、绘制心形图r=2(1-cosθ)的极坐标图形>> theta=[0:0.01:2*pi];>> polar(theta,2*(1-cos(theta)),'-k')>> polar(theta,2*(1-cos(theta)),'-or')9、用双轴对数坐标绘制y=x*3^x-30的图形>> x=logspace(-3,3);>> y=x.*3.^x-30;>> loglog(y,'-or','linewidth',2);>> grid on10、绘制数据向量的单轴对数坐标图形>> x=[1:50];>> y=[1:50];>> semilogx(x,y,'-*b')%绘制横轴为对数坐标%纵轴为线性坐标>> grid on>> semilogy(x,y,'-*b')%绘制纵轴为对数坐标%横轴为线性坐标>> grid on11、绘制矩阵的条形图,并求出句柄属性值向量。

>> A=[1 2 3;4 5 6;7 8 9];>> h=bar(A)h =171.0031 174.0026 176.002612、绘制矩阵的水平条形图。

>> y=[3 2 -2 2 1;-1 2 3 7 1;7 2 -3 5 2];>> x=[1:3];>> barh(x,y)13、绘制矩阵的面积图。

>> y=[3 2 -2 2 1;-1 3 3 7 2;-7 5 5 9 3]; >> area(y)14、绘制矩阵的二维饼图>> x=[1 2 3;4 5 6;7 8 9];>> explode=[0 1 0 1 0 1 0 1 0];>> pie(x,explode)15、自行确定数据向量,绘制其散点图。

>> x=rand(1,100);y=randn(1,100);scatter(x,y,20)16、自行确定数据,绘制其柱形图。

>> x=[-2:0.01:4];>>y=randn(1131,1); >>hist(y,x)17、绘制y=sinx在[0,2*pi]上的误差图。

>> x=[0:pi/20:2*pi];>> y=sin(x);>> E=std(y)*ones(size(x));%条形控制>> errorbar(x,y,E)18、绘制火柴杆图。

>> x=[1 1.5 2;3 3.5 4;5 5.5 6]; >> y=[4 3 2;4 8 9;2 7 3]; >> stem(x,y,'fill')%fill意思是“实心点”19、绘制羽列图。

>> U=[-90:5:90]*pi/180; %建立等间距数据>> V=2*ones(size(U));%根据U建立数据>> [U,V]=pol2cart(U,V);转换数据为直角坐标形式>> feather(U,V)20、同一窗口绘制和在[0,30]上的图形。

>> x=[0:0.01:30];>> y1=50*exp(-0.05*x).*sin(x); >> y2=0.5*exp(-0.5*x).*cos(x);>> plotyy(x,y1,x,y2,'plot')% plotyy(x,y1,x,y2,'plot')表示:用左侧y标度绘制(x,y1)用右侧y标度绘制(x,y2)21、绘制8阶魔方矩阵的等值线图和阶梯图。

>> A=magic(8);contour(A) %绘制等值线图stairs(A) %绘制阶梯图22、绘制玫瑰花图。

>> theta=rand(1,200)*2*pi; >> rose(theta,25)23、绘制罗盘图。

>> x=rand(20,1);y=randn(20,1); >> compass(x,y)24、绘制函数的梯度场矢量图。

>> [x,y]=meshgrid([-2:0.1:2]); %建立栅格点数据向量>> z=3.*x.*y*exp(-x.^2-y.^2)-1; %计算函数值向量>> [u,v]=gradient(z,0.2,0.2); %计算梯度值向量>> quiver(x,y,u,v,2) %绘制梯度场矢量图25、给定向量x,y生成网格矩阵。

>> x=[1 2 3 4];>> y=[10 11 12 13 14];>> [U,V]=meshgrid(x,y)U =1 2 3 41 2 3 41 2 3 41 2 3 41 2 3 4V =10 10 10 1011 11 11 1112 12 12 1213 13 13 1314 14 14 1426、生成一个5阶高斯分布矩阵,并给出相应的x,y向量矩阵。

>> [X,Y,Z]=peaks(5)X =-3.0000 -1.5000 0 1.5000 3.0000-3.0000 -1.5000 0 1.5000 3.0000-3.0000 -1.5000 0 1.5000 3.0000-3.0000 -1.5000 0 1.5000 3.0000-3.0000 -1.5000 0 1.5000 3.0000Y =-3.0000 -3.0000 -3.0000 -3.0000 -3.0000-1.5000 -1.5000 -1.5000 -1.5000 -1.50000 0 0 0 01.5000 1.5000 1.5000 1.5000 1.50003.0000 3.0000 3.0000 3.0000 3.0000Z =0.0001 0.0042 -0.2450 -0.0298 -0.0000-0.0005 0.3265 -5.6803 -0.4405 0.0036-0.0365 -2.7736 0.9810 3.2695 0.0331-0.0031 0.4784 7.9966 1.1853 0.00440.0000 0.0312 0.2999 0.0320 0.000027、在-4<=x<=4,-4<=y<=4区域上绘制z=x^2+y^2的三维网格图。

相关主题