常用Matlab作图命令.docx

上传人:b****3 文档编号:27282784 上传时间:2023-06-28 格式:DOCX 页数:43 大小:736.46KB
下载 相关 举报
常用Matlab作图命令.docx_第1页
第1页 / 共43页
常用Matlab作图命令.docx_第2页
第2页 / 共43页
常用Matlab作图命令.docx_第3页
第3页 / 共43页
常用Matlab作图命令.docx_第4页
第4页 / 共43页
常用Matlab作图命令.docx_第5页
第5页 / 共43页
点击查看更多>>
下载资源
资源描述

常用Matlab作图命令.docx

《常用Matlab作图命令.docx》由会员分享,可在线阅读,更多相关《常用Matlab作图命令.docx(43页珍藏版)》请在冰豆网上搜索。

常用Matlab作图命令.docx

常用Matlab作图命令

常用Matlab作图命令

1.概率统计作图

1.1绘出正态分布的密度函数曲线

x=-5:

0.1:

5;

y=normpdf(x,0,1);

z=normpdf(x,0,2);

plot(x,y,x,z)

gtext('N(0,1)')

gtext('N(0,2)')

title('正态分布密度曲线')

1.2绘出t-分布的密度函数曲线,并与标准正态密度曲线比较

x=-5:

0.1:

5;

y=tpdf(x,30);

z=normpdf(x,0,1);

plot(x,y,'k:

',x,z,'k-')

xlabel('\itx');

ylabel('概率密度\itp')

legend('t分布','标准正态密度')

difference=tpdf(x,30)-normpdf(x,0,1)

1.3绘制开方分布密度函数在n分别等于1、5、15的图

x=0:

1:

30;y1=chi2pdf(x,1);

plot(x,y1,':

')

holdon

y2=chi2pdf(x,5);plot(x,y2,'+')

y3=chi2pdf(x,15);plot(x,y3,'O')

Axis([0,30,0,0.2])

1.4计算自由度是50,10的F-分布的0.9的分位数,并给出概率与分位数关系的图形

x=finv(0.9,50,10)x=2.1171

p=fcdf(x,50,10)p=0.9000

t=0:

0.1:

4;

y=fpdf(x,50,10);

z=fpdf(t,50,10);

plot(t,z,[x,x],[0,y])

text(x,0,'2.1171')

gtext('p=0.9')

title('概率与分位数的关系')

1.5经验累积分布函数图形

X=normrnd(0,1,50,1);

[h,stats]=cdfplot(X)

 

y=evrnd(0,3,100,1);

cdfplot(y)

holdon

x=-20:

0.1:

10;

f=evcdf(x,0,3);

plot(x,f,'m')

legend('Empirical','Theoretical','Location','NW')

1.6绘制正态分布概率图形

X=normrnd(0,1,50,1);

normplot(X)

1.7绘制威布尔(Weibull)概率图形

%绘制威布尔(Weibull)概率图形的目的是用图解法估计来自威布尔分布的数据X,如果X是威布

%尔分布数据,其图形是直线的,否则图形中可能产生弯曲。

r=weibrnd(1.2,1.5,50,1);

weibplot(r)

 

1.8样本数据的盒图

%boxplot(X)%产生矩阵X的每一列的盒图和“须”图,“须”是从盒的尾部延伸出来,并表示盒外数据长度的线,如果“须”的外面没有数据,则在“须”的底部有一个点。

x1=normrnd(5,1,100,1);

x2=normrnd(6,1,100,1);

x=[x1x2];

boxplot(x,1,'g+',1,0)

 

1.9样本的概率图形

data=normrnd(0,1,30,2);

p=capaplot(data,[-2,2])

p=

0.9199

 

1.10附加有正态密度曲线的直方图

r=normrnd(10,1,100,1);

histfit(r)

 

1.11在指定的界线之间画正态密度曲线

格式p=normspec(specs,mu,sigma)%specs指定界线,mu,sigma为正态分布的参数p

为样本落在上、下界之间的概率

normspec([10Inf],11.5,1.25)

1.12二项分布的函数图

p=0.2;%Probabilityofsuccessforeachtrial

n=10;%Numberoftrials

k=0:

n;%Outcomes

m=binopdf(k,n,p);%Probabilitymassvector

bar(k,m)%Visualizetheprobabilitydistribution

set(get(gca,'Children'),'FaceColor',[.8.81])

gridon

1.13指数分布函数图

lambda=2;%Failurerate

t=0:

0.01:

3;%Outcomes

f=exppdf(t,1/lambda);%Probabilitydensityvector

plot(t,f)%Visualizetheprobabilitydistribution

gridon

1.14ksdensity概率密度估计函数

cars=load('carsmall','MPG','Origin');

MPG=cars.MPG;

[f,x,u]=ksdensity(MPG);

plot(x,f)

title('DensityestimateforMPG')

holdon

[f,x]=ksdensity(MPG,'width',u/3);

plot(x,f,'r');

[f,x]=ksdensity(MPG,'width',u*3);

plot(x,f,'g');

legend('defaultwidth','1/3default','3*default')

holdoff

hname={'normal''epanechnikov''box''triangle'};

colors={'r''b''g''m'};

forj=1:

4

[f,x]=ksdensity(MPG,'kernel',hname{j});

plot(x,f,colors{j});

holdon;

end

legend(hname{:

});

holdoff

2.常用作图函数

2.1普通双函数图

t=0:

pi/20:

2*pi;

y=exp(sin(t));

plotyy(t,y,t,y,'plot','stem')

xlabel('XAxis')

ylabel('PlotYAxis')

title('TwoYAxes')

 

2.2多数据集在同一图中

x=0:

pi/100:

2*pi;

y=sin(x);

y2=sin(x-.25);

y3=sin(x-.5);

plot(x,y,x,y2,x,y3)

legend('sin(x)','sin(x-.25)','sin(x-.5)')

2.3在原图上继续作图holdon

[x,y,z]=peaks;

pcolor(x,y,z)

shadinginterp

holdon

contour(x,y,z,20,'k')

holdoff

2.4同一图中作多个图

clear

x=0.1:

0.1:

4*pi;%生成向量x。

y1=sin(x);%生成y1值

y2=sin(x)./x;%生成y2值。

figure;%创建一个新窗口。

subplot(1,2,1);%定义第一个子图区域。

plot(x,y1);%用实线画曲线。

subplot(1,2,2);%定义第二个子图区域。

plot(x,y2,'*');%用‘*’号画曲线

clear;

x=[137];

y=[692];

s1=subplot(2,2,1);

plot(x,y);

grid;

title('Default');

s2=subplot(2,2,2);

plot(x,y);

set(s2,'XTick',x);%改变X轴标记

set(s2,'XGrid','on');%画X轴的格栅线

title('Xscalemanipulated');

s3=subplot(2,2,3);

plot(x,y);

set(s3,'YTick',[2,6,9]);%改变y轴标记

set(s3,'YGrid','on');%画y轴的格栅线

set(s3,'GridLineStyle','-.');%使用虚线格栅

title('Yscalemanipulated');

s4=subplot(2,2,4);

plot(x,y);

set(s4,'XTick',x);%改变xy轴标记

set(s4,'YTick',[269]);

grid;%画xy轴的格栅线

title('Bothscalesmanipulated');

clfreset%ClearingtheFigureforaNewPlot

t=0:

pi/10:

2*pi;

[X,Y,Z]=cylinder(4*cos(t));

subplot(2,2,1);mesh(X)

subplot(2,2,2);mesh(Y)

subplot(2,2,3);mesh(Z)

subplot(2,2,4);mesh(X,Y,Z)

2.5标签的显示(字符参照Latex标准)

t=-pi:

pi/100:

pi;

y=sin(t);

plot(t,y)

axis([-pipi-11])

xlabel('-\pi\leq{\itt}\leq\pi')

ylabel('sin(t)')

title('Graphofthesinefunction')

text(1,-1/3,'{\itNotetheoddsymmetry.}')

2.6多元变量作图

[X,Y]=meshgrid(-8:

.5:

8);

R=sqrt(X.^2+Y.^2)+eps;

Z=sin(R)./R;

mesh(X,Y,Z,'EdgeColor','black')%使用mesh(X,Y,Z)采用默认颜色;

2.7定义函数作图

functionmyfunc(x)

%x=-10:

.005:

40;Here'savalueyoucanuseforx

y=[1.5*cos(x)+6*exp(-.1*x)+exp(.07*x).*sin(3*x)];

ym=mean(y);

hfig=figure('Name','FunctionandMean',...

'Pointer','fullcrosshair');

hax=axes('Parent',hfig);

plot(hax,x,y)

holdon

plot(hax,[min(x)max(x)],[ymym],'Color','red')

holdoff

ylab=get(hax,'YTick');

set(hax,'YTick',sort([ylabym]))

title('y=1.5cos(x)+6e^{-0.1x}+e^{0.07x}sin(3x)')

xlabel('XAxis');ylabel('YAxis')

2.8使用fplot作图函数

subplot(2,2,1);fplot('humps',[01])

subplot(2,2,2);fplot('abs(exp(-j*x*(0:

9))*ones(10,1))',[02*pi])

subplot(2,1,2);fplot('[tan(x),sin(x),cos(x)]',2*pi*[-11-11])%后面参数表示x,y上下界;

2.9给当前图形加一条参考线

y=[3.22.63.13.42.42.93.03.33.22.12.6]';

plot(y,'+')

refline(0,3)

 

2.10在当前图形中加入一条多项式曲线

格式h=refcurve(p)%在图中加入一条多项式曲线,h为曲线的环柄,p为多项式系数向量,p=[p1,p2,p3,…,pn],其中p1为最高幂项系数

h=[85162230289339381413437452458456440400356];

plot(h,'+')

refcurve([-4.91000])

3.常用作图工具

3.1plottools

在输入变量后,如:

x=-1:

.1:

1;%Definetherangeofx

y=x.^3;%Raiseeachelementinxtothethirdpower

可输入plottools调用相应的作图工具;使用非常方便

4.特殊图形作图

4.1画极坐标图

t=0:

.01:

2*pi;

polar(t,sin(3*t).*cos(2*t),'--r')

4.2bar图

x=-2.9:

0.2:

2.9;

bar(x,exp(x.*sin(x)))

colormapgray

4.3barh图

X=1:

.5:

5;

Y=exp(X).*sin(X);

barh(Y,'stack')

4.4compass图

Z=magic(20).*randn(20);

compass(Z)

 

Z=eig(randn(20,20));

compass(Z)

 

4.5comet图

t=0:

.01:

2*pi;

x=exp(sin(2*t)).*(cos(t).^2/3);

y=t.*(sin(t).^2);

comet(x,y)

holdon

 

4.6errorbar图

X=0:

pi/20:

pi;

Y=exp(X).*sin(X);

E=std(Y)*ones(size(X));

errorbar(X,Y,E)

4.7feather图

th=(-90:

10:

90)*pi/180;

r=4*ones(size(th));

[u,v]=pol2cart(th,r);

feather(u,v);

4.8hist图

%功能二维条形直方图,可以显示出数据的分配情形。

x=-5:

0.1:

5;

y=randn(1000,1);

hist(y,x)

 

4.9rose图

theta=3*pi*randn(1,30);

rose(theta)

4.10stair图

x=0:

.25:

10;

stairs(x,exp(sin(x.^2)))

4.11stem图

x=linspace(0,2,10);

stem(exp(-x.^2),'fill','-.')

4.12pie图

x=[130.52.52];

explode=[01000];

pie(x,explode)

5.三维图形作图

5.1pie3图

x=[130.52.52];

explode=[01000];

pie3(x,explode)

colormaphsv

5.2sphere图

[X,Y,Z]=sphere;

mesh(X,Y,Z)

hiddenoff

 

5.3基本三维图

t=0:

pi/50:

10*pi;

plot3(sin(t),cos(t),t);

axissquare;

gridon;

 

[X,Y]=meshgrid([-2:

0.1:

2]);

Z=X.*exp(-X.^2-Y.^2);

plot3(X,Y,Z);

gridon;

 

x=linspace(0,3*pi);%x-axisdata

z1=sin(x);%plotinx-zplane

z2=sin(2*x);

z3=sin(3*x);

y1=zeros(size(x));%spreadoutalongy-axis

y3=zeros(size(x));%bygivingeachdiffenty-axisvalues

y2=y3/2;

plot3(x,y1,z1,x,y2,z2,x,y3,z3);

grid,xlabel('x-axis'),ylabel('y-axis'),zlabel('z-axis');

title('sin(x),sin(2x),sin(3x)');

5.4绘制复数图

实例:

如何在极坐标表下绘制复数函数z、z2、z3和

的曲面图形?

z=cplxgrid(20);%准备网格,使用cplxgrid函数创建一个21*41的复数网格矩阵;

subplot(2,2,1);

cplxmap(z,z);

title('线性运算');

xlabel('实轴');

ylabel('虚轴');

zlabel('函数值');

subplot(2,2,2);

cplxmap(z,z.^2);

title('平方运算');

subplot(2,2,3);

cplxmap(z,z.^3);

title('立方运算');

subplot(2,2,4);

cplxmap(z,(z.^4-1).^(1/4));

title('复杂运算');

xlabel('实轴');

ylabel('虚轴');

zlabel('函数值');

6.插值拟合作图

6.1polyfit/polyval

x=(0:

0.1:

5)';

y=erf(x);

p=polyfit(x,y,6)

f=polyval(p,x);

plot(x,y,'o',x,f,'-')

axis([0502])

 

6.2最小二乘拟合直线

X=[23.45.681112.313.81618.819.9]';

plot(X,'+')

lsline

7.复杂函数作图

7.1二次曲面的方程作图实例

讨论参数a,b,c对其形状的影响

相应的代码:

a=input('a=');b=input('b=');c=input('c=');

d=input('d=');N=input('N=');%输入参数,N为网格线数目

xgrid=linspace(-abs(a),abs(a),N);%建立x网格坐标

ygrid=linspace(-abs(b),abs(b),N);%建立y网格坐标

[x,y]=meshgrid(xgrid,ygrid);%确定N×N个点的x,y网格坐标

z=c*sqrt(d-y.*y/b^2-x.*x/a^2);u=1;%u=1,表示z要取正值

z1=real(z);%取z的实部z1

fork=2:

N-1;%以下7行程序的作用是取消z中含虚数的点

forj=2:

N-1

ifimag(z(k,j))~=0z1(k,j)=0;end

ifall(imag(z([k-1:

k+1],[j-1:

j+1])))~=0z1(k,j)=NaN;end

end

end

surf(x,y,z1),holdon%画空间曲面

ifu==1z2=-z1;surf(x,y,z2);%u=1时加画负半面

axis([-abs(a),abs(a),-abs(b),abs(b),-abs(c),abs(c)]);

end

xlabel('x'),ylabel('y'),zlabel('z')

holdoff

运行程序,当a=5,b=4,c=3,d=1,N=50时结果为

当a=5i,b=4,c=3,d=1,N=15时结果为

当a=5i,b=4i,c=3,d=0.1,N=10时结果为

7.2空间曲面作图

画出空间曲面

范围内的图形,并画出相应的等高线。

clear;close;

u=-30:

0.5:

30;

v=-30:

0.5:

30;

[x,y]=meshgrid(u,v);

z=10*sin(sqrt(x.^2+y.^2))./sqrt(1+x.^2+y.^2);

subplot(1,2,1);

mesh(x,y,z)

subplot(1,2,2);

contour(x,y,z,10)

7.3根据给定的参数方程,绘制曲面图形

a)椭球面

clear;close;

u=-4:

0.1:

4;

v=-4:

0.1:

4;

[U,V]=meshgrid(u,v);

X=3.*cos(U).*sin(V);

Y=2.*cos(U).*cos(V);

Z=sin(U);

surf(X,Y,Z);

axisequal

b)椭圆抛物面

clear;close;

u=-4:

0.1:

4;

v=-4:

0.1:

4;

[U,V]=meshgrid(u,v);

X=3.*U.*sin(V);

Y=2.*U.*cos(V);

Z=4.*U.^2;

surf(X,Y,Z);

shadinginterp;

colormap(hot);

axisequal

c)单叶双曲面

clear;close;

u=-2:

0.1:

2;

v=-2:

0.1:

2;

[U,V]=meshgrid(u,v);

X=3*sec(U).*sin(V);

Y=2*sec(U).*cos(V);

Z=4*tan(U);

mesh(X,Y,Z);

shadinginterp;

colormap(jet);

axisequal

d)双叶抛物面

clear;close;

u=-4:

0.1:

4;

v=-4:

0.1:

4;

[U,V]=meshgrid(u,v);

X=U;

Y=V;

Z=(U.^2-V.^2)/3;

mesh(X,Y,Z);

shadinginterp;

colormap(jet);

axisequal

e)旋转面

clear;close;

u=-4:

0.1:

4;

v=-4:

0.1:

4;

[U,V]=meshgrid(u,v);

X=log(U).*sin(V);

Y=log(U).*cos(V);

Z=U;

mesh(X,Y,Z);

shadinginterp;

colormap(jet);

axisequal

f)圆锥面

clear;close;

u=-4:

0.1:

4;

v=-4:

0.1:

4;

[U,V]=meshgrid(u,v);

X=U.*sin(V);

Y=U.*cos(V);

Z=U;

mesh(X,Y,Z);

shadinginterp;

colormap(jet);

axisequal

g)环面

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1