实验作业2----MATLAB作图
实验作业2 MATLAB作图1、用plot,fplot 绘制函数y=cos(tan( x))的图形。
解:
代码如下:
x=linspace(-0.5,0.5,30);
y=cos(tan(pi*x));
plot(x,y)
结果:
fplot('[cos(tan(pi*x))]',[-0.5,0.5])
结果:
注意事项: fplot('[cos(tan(pi*x))]',[-0.5,0.5])不能写成fplot('[cos(tan(pi*x))]',(-0.5,0.5))否则是错误程序。
2. 用ezplot绘制函数exy-sin(x+y)=0 在[-3, 3]上的图形。
解:
代码如下:
ezplot('exp(x*y)-sin(x+y)=0',[-3,3])
3.用matlab以动画的方式绘制出摆线x=a(t-sint) y=a(1-cost) (a自己赋值)的渐屈线
clear;
clc;
close;
a=1;
syms t
x=a*(t-sin(t));
y=a*(1-cos(t));
ezplot(x,y,[0,2*pi]),grid on;hold on;
dy=diff(y)/diff(x);
dyy=diff(dy)/diff(x);
xx=x-(1+dy^2)*dy/dyy;%渐屈线的坐标
yy=y+(1+dy^2)/dyy;
M=50;
t=0;
xxx=subs(xx);
yyy=subs(yy);
H1=plot(xxx,yyy,'r');hold on;grid on;axis([0,7,-2.5,2.5]);
x1=subs(x);
y1=subs(y);
H2=plot([x1,xxx],[y1,yyy],'k--');
H3=plot(x1,y1,'ko');
H4=plot(xxx,yyy,'ro');
tt=linspace(0,2*pi,M);
for i=1:M
pause(0.2);
t=tt(1:i);
xxx=subs(xx);
yyy=subs(yy);
x1=subs(x);
y1=subs(y);
set(H1,'xdata',xxx,'ydata',yyy);
set(H2,'xdata',[x1(i),xxx(i)],'ydata',[y1(i),yyy(i)]);
set(H3,'xdata',x1(i),'ydata',y1(i));
set(H4,'xdata',xxx(i),'ydata',yyy(i));
end
绘制函数⎩⎨⎧-=-=)
cos 1()sin (t a y t t a x 在]2,0[π∈t 上的图形。
程序:a=input('please input a=');
t=linspace(0,2*pi,100);
x=a*(sin(t));
y=a*(t-cos(t));
plot(x,y);
please input a=10
4.
5. 在同一平面中的两个窗口分别画出心形线和马鞍面。
要求:1)在图形上加格栅、图例和标注;
2)定制坐标;
3)以不同角度观察马鞍面。
解:
心型线代码如下:
clear;
clc;
i=-pi:0.1:pi;
x=2.*(sin(i)-sin(2*i)./2);
y=2.*(cos(i)-cos(i).^2);
plot(x,y);
axis([-3 3 -4.2 1]);%制定图形坐标title('心形线');%当前图顶端加图例xlabel('x');%当前图x轴加图例
ylabel('y');%当前图y轴加图例
grid on;%加格栅到当前图上
心型线运行结果显示如下图:
图3.1(心型线)
马鞍线代码如下:
clear;
clc;
a=10;
b=10;
x=-1.5:0.1:1.5;
y=-1.5:0.1:1.5;
[X,Y]=meshgrid(x,y);%x行y列的矩阵
Z=X.^2/a-Y.^2/b;
figure(2);%新建窗口
subplot(221);%分割当前窗口,作图显示在该分割块上
surf (X,Y,Z);
title('马鞍面');
xlabel('x');
ylabel('y');
subplot(222);
surf (X,Y,Z);
title('马鞍面');
xlabel('x');
ylabel('y');
view(20,30);%改变视角到(20,30) subplot(223);
surf (X,Y,Z);
title('马鞍面');
xlabel('x');
ylabel('y');
view(50,20);%改变视角到(50,20)subplot(224);
surf (X,Y,Z);
title('马鞍面');
xlabel('x');
ylabel('y');
view(60,10);%改变视角到(60,10)
马鞍线运行结果显示如下图:
图3.2(马鞍面)
7.以不同的视角观察球面x2+y2+z2=r2和圆柱面x2+y2=rx所围区域.
解:
代码如下:
clear;
clc;
r=2;
[x0,y0,z0]=sphere(50);
x=r*x0;y=r*y0;z=r*z0;
surf(x,y,z);hold on;
f=@(x,y)x.^2+y.^2-r*x;
ezsurf(f,[-1.5,2.5],[-2,1.5]);
axis equal;
view(30,20);
运行结果显示如下图:
图3.3。