1.二维曲线
x=linspace(0,2*pi,100); %把0~2*pi分成100份
y=[sin(x);
sin(2*x);
sin(3*x)];
plot(x,y)
t=0:0.01:2*pi; %行向量
t1=t'; %列向量
x=[t1,t1,t1];
y=[sin(t1),sin(2*t1),sin(3*t1)];
plot(x,y)
t1=linspace(0,2*pi,10);
t2=linspace(0,2*pi,20);
t3=linspace(0,2*pi,100);
plot(t1,sin(t1),t2,sin(t2)+1,t3,sin(t3)+2)
x=(0:pi/50:2*pi)';
y1=2*exp(-0.5*x)*[1,-1];
y2=2*exp(-0.5*x).*sin(2*pi*x);
x1=0:0.5:6;
y3=2*exp(-0.5*x1).*sin(2*pi*x1);
plot(x,y1,'k:',x,y2,'b--',x1,y3,'rp')
从以上的图形可以看出,有时候x的取值间隔不好确定。
x=0:0.005:0.2;
fplot(@(x) sin(1./x),[0,0.2],'g')
x=0:0.005:0.2;
fplot(@(x) 2*x,@(x) sin(1./x),[0,0.2],'g') %图像x轴扩大一倍
2.绘制图形的辅助操作
gtext()可以在图形上指定表示点。
x=linspace(0,2*pi,100);
y1=sin(x);
y2=sin(2*x);
y3=sin(3*x);
plot(x,[y1;y2;y3])
axis([0,2*pi,-1.5,1.5]);
title('不同频率的正弦函数');
xlabel('X');
ylabel('Y');
text(0.5,sin(0.5),'sin(x)');
text(1.5,sin(2*1.5),'sin(2x)');
text(2,sin(3*2),'sin(3x)');
legend('sin(x)','sin(2x)','sin(3x)');%注意这里的函数名对应的顺序为画图时的顺序
grid on; %grid用于在有无网络和边框之间进行转换
t=linspace(0,2*pi,100);
x=sin(t);
y=cos(t);
%第一幅图
subplot(2,2,1);
plot(x,y,'g')
%第二幅图
subplot(2,2,2);
plot(x,y,'g')
hold on;
plot(2*x,2*y,'b--')
%第三幅图
subplot(2,2,3);
axis([-3,3,-3,3]);
plot(x,y,'g')
hold on;
plot(2*x,2*y,'b--')
%第四幅图
subplot(2,2,4);
axis([-3,3,-3,3]);
plot(x,y,'g')
hold on;
plot(2*x,2*y,'b--')
axis equal;
3.其他形式的二维图形
x=0:0.1:10;
y=1./x;
subplot(2,2,1);
plot(x,y);
>>
x=0:0.1:10;
y=1./x;
subplot(2,2,1);
plot(x,y);
title('plot(x,y)');
subplot(2,2,2);
semilogx(x,y);
title('semilogx(x,y)');
grid on;
subplot(2,2,3);
semilogy(x,y);
title('semilogy(x,y)');
grid on;
subplot(2,2,4);
loglog(x,y);
title('loglog(x,y)');
grid on;
t=linspace(0,2*pi,100);
r=1-sin(t);
subplot(1,2,1);
polar(t,r);
subplot(1,2,2);
t1=t-pi/2;
r1=2*(1-sin(t1));
polar(t1,r1);
>>
t=linspace(0,2*pi,100);
r=1-sin(t);
subplot(1,2,1);
polar(t,r);
subplot(1,2,2);
t1=t-pi/2;
r1=2*(1-sin(t1));
polar(t,r1);
4.三维曲线
参数x,y,z是同型矩阵时,以各列绘制曲线。
t=0:0.01:2*pi;
t=t';
x=[t,t,t,t,t];
y=[sin(t),sin(t)+1,sin(t)+2,sin(t)+3,sin(t)+4];
z=[t,t,t,t,t];
plot3(x,y,z)
grid on;
axis([0,12,-2,6,-6,6]);
t=0:pi/50:6*pi;
x=cos(t);
y=sin(t);
z=2*t;
subplot(1,2,1);%要是不记得函数名可以按TAB健补全
plot3(x,y,z,'p--');
xlabel('X');ylabel('Y');zlabel('Z');grid on;
subplot(1,2,2);%要是不记得函数名可以按TAB健补全
xlabel('X');ylabel('Y');zlabel('Z');grid on;
plot3(x,y,z,'p--');
%比较两幅图可以知道xlabel('X');ylabel('Y');zlabel('Z');grid on;要放在plot前