clf;clear; %清除
t=-2*pi:0.05*pi:2*pi; %定义t的取值区间以及步进间隔
y1=sin(t);% 定义y1正弦函数
y2=cos(t);% 定义y2余弦函数
y3=sin(10*t).*sin(t); %两函数相乘
%a.*b表示矩阵a中的元素与矩阵b中的元素按位置依次相乘,
%得到的结果将作为新矩阵中相同位置的元素。
figure(1);
subplot(2,2,1),stem(t,y1,'filled');hold on;plot(t,y2);%y1画散点图,y2画线性图,
%hold on表示在上一张图上绘制继续绘制
subplot(2,2,2),plot(t,y2,' b');%
subplot(2,2,3),plot(t,y3,'m');%
t1=0:0.1:2; %定义t1的取值区间以及步进间隔
u1=exp(t1); % 以e为底的指数函数
t2=0:0.01:20; %定义t2的取值区间以及步进间隔
u21=200*exp(-0.05*t2).*sin(t2);%
u22=0.8*exp(-0.5*t2).*sin(10*t2);%
theta=0:0.01:2*pi;%
rho=sin(2*theta).*cos(2*theta);%
figure(2);%
t4=0:0.01:10;%
u4=10*exp(t4);%
subplot(2,2,1),stem(t1,u1,' b');%
subplot(2,2,2),plotyy(t2,u21,t2,u22);%绘制双坐标
subplot(2,2,3),polar(theta,rho);%绘制极坐标
subplot(2,2,4),loglog(t4,t4);%绘制以10为底的对数坐标
%画饼图 pie(x); pie(x,explode);
figure(3);
score=[15 30 42 10 5];
explode=[1 0 0 0 0];%explode是与X等长度的向量,若为0表示不分离,若不为0 ,则分离
subplot(2,3,1);%
pie(score,explode);
legend('优秀','良好','及格','不及格');
%条形图 bar(x,y); bar(x,y,width);直方图hist(y,m);[count,centers]=hist(y,m)
%x是横坐标的向量,缺省默认为1:m;m是y的向量长度,y是从坐标,可以是向量或矩阵,
%当y是向量时,每一个元素对应一个竖条,当y时矩阵时,将画出一组竖条,width是竖条宽度,默认0.8
%bar3,可以完成三维图的绘制
score=[15 30 42 10 5];
subplot(2,3,2);%
bar(score,0.1);
%直方图 hist(y,m);[count,centers]=hist(y,m);m是分段的个数,默认分10段,
%输出图形的每个条形线高度是落入每一段内元素的计数值,y可以是向量或者矩阵,
x=randn(1000,3);
subplot(2,3,3);%
hist(x);
[c,d]=hist(x);
%三维图形绘制 plot3绘制三维图形;plot3(x,y,z)说明:当x y z是同维向量时,
%绘制以x y z元素为坐标的三维曲线,当x y z是同维矩阵时,则绘制曲线等于矩阵的数列数
%绘制三维曲线图
figure(4);
t=0:pi/50:10*pi;
subplot(2,2,1);%
plot3(sin(t),cos(t),t);
%绘制三维网曲线图和曲面图,[x,y]=meshgrid(xgv,ygv)。以等长度向量xgv,ygv为基准,产生二维网格数据
%为了绘制三维立体图形,Matlab将x方向划分为m份,将y方向划分为n份,
%由划分点分别作平行于两坐标轴的直线,形成n*m各网格,,然后计算出各网格点的对应函数f(x,y)的值
% a=0:4;b=a;
% [x,y]=meshgrid(a,b);
%绘制三维网曲线图 使用mesh函数绘制三维网线图形,函数如下
%mesh(x,y,z,c);
%mesh(x,y,z);
%mesh(z,c);
%mesh(z);
%说明:在x y确定的区域内绘制z的网格图,x y z是维数相同的矩阵
%c用于指定不同高度下的颜色范围,缺省默认c=z,表示颜色正比于图形的高度
%当x y缺省时,把z矩阵的列下标作为x轴坐标,把z矩阵的行下标作为y轴坐标,
%绘制三维网线图形,当x y是向量时,要求x的长度必须等于Z矩阵的列数,y的长度等于Z矩阵的行数
%Matlab还提供了函数meshz与meshc函数,函数meshz为网线图加幕帘线,meshc函数为网格线加等高线
[x,y]=meshgrid(-8:0.1:8);
R=sqrt(x.^2+y.^2)+eps;%返回数组X的每个元素的平方根
z=sin(R)./R;
subplot(2,2,1);%
z1=sin(R);
mesh(x,y,z1);
subplot(2,2,2);%
meshc(x,y,z1);
subplot(2,2,3);%
mesh(z);
subplot(2,2,4);%
meshz(z);
%绘制三维曲面图形,Matlab提供了surf函数绘制三维网线图形,基本格式为
%surf(x,y,z,c);surf(x,y,z);surf(z,c);surf(z);
[x,y]=meshgrid(-3:0.05:3);
z=peaks(x,y);
figure(5);
surf(x,y,z);
xlabel('x轴');ylabel('y轴');