MATLAB入门(九)

技术 · 2019-01-06 · 299 人浏览

绘图基础三

设置坐标轴

  • axis
  • 坐标轴范围

    • axis([X轴范围,Y轴范围])
    • axis auto
    • axis manual
    • axis tight
  • 坐标轴比例

    • axis equal
    • axis square
    • axis normal
  • 关闭

    • axis off

设置坐标轴刻度

  • set函数

    • set(gca,'xTick',刻度)
    • set(gca,'xTickLabel',刻度标签)
    • gca表示当前坐标轴
x=0:0.1:2*pi;
y=sin(x);
plot(x,y);
set(gca,'xTick',[0 pi/2 pi 3*pi/2 2*pi]);
set(gca,'xTickLabel',{'0' 'pi/2' 'pi' '3*pi/2' '2*pi'})

42.png

设置对数坐标

  • semilogx X轴使用对数
  • semiology Y轴使用对数
  • loglog XY轴使用使用对数
x=0:0.1:10;
y=exp(x);
subplot(2,2,1),plot(x,y);
subplot(2,2,2),semilogx(x,y);
subplot(2,2,3),semilogy(x,y);
subplot(2,2,4),loglog(x,y);

43.png

双坐标轴

  • plotyy函数

    • 没有使用plotyy函数
x=1:100;
y1=rand(1,100)*1000;
y2=x.^2;
plot(x,y1,x,y2);

44.png

    • 使用plotyy函数
    • 语法:
    • [AX,H1,H2]=plotyy(参数)
    • AX--AX(1)左侧坐标句柄,AX(2)右侧坐标句柄
    • H1--左侧坐标图线句柄
    • H2--右侧坐标图线句柄
x=1:100;
y1=rand(1,100)*1000;
y2=x.^2;
plotyy(x,y1,x,y2);

45.png

  • 使用句柄控制
x=1:100;
y1=rand(1,100);
y2=x.^2;
[ax,ha,hb]=plotyy(x,y1,x,y2);
set(ha,'color','g');      %设置颜色
set(hb,'color','m');      %设置颜色
ylabel(ax(1),'随机数');    %设置标签
ylabel(ax(2),'平方’);      %设置标签

46.png

绘图开关

  • axis on/axis off--坐标轴
  • box on/box off--边界线
  • grid on/grid off--网格线
x=0:0.1:2*pi;
y=sin(x);
subplot(2,2,1),plot(x,y);
subplot(2,2,2),plot(x,y),axis off;
subplot(2,2,3),plot(x,y),box off;
subplot(2,2,4),plot(x,y),grid on;

47.png

图形标注

图形标题

  • title函数
  • 语法:

    • title(标题)
    • title(标题,属性名,属性值)
    x=0:0.1:2*pi;
    y=sin(x);
    plot(x,y);
    title('y=sin(x)示范','color','r');

    48.png

坐标轴标签

  • xlabel/ylabel函数
  • 语法:

    • xlabel(标签,属性名,属性值)
    • ylabel(标签,属性名,属性值)
    x=0:0.1:2*pi;
    y=sin(x);
    plot(x,y);
    xlabel('X轴为0~2pi','color','r','fontsize',12);
    ylabel('Y轴y=sin(x)','color','b','fontsize',12);

    49.png

图例

  • legend函数
  • 语法:

    • legend(图例说明)
    • 先绘制哪条就要先说明哪条
    x=0:0.1:2*pi;
    y1=sin(x);
    y2=cos(x);
    y3=sin(x)+cos(x);
    plot(x,[y1;y2;y3]);
    legend('sin(x)','cos(x)','sin(x)+cos(x)');

    50.png

绘图 更改格式
Theme Jasmine by Kent Liao