当前位置:   article > 正文

MATLAB --- 绘图 axis与axes_在matlb使用axis画扁平图

在matlb使用axis画扁平图

MATLAB — 绘图 axis与axes

axis

  • 目的: 调整坐标轴范围以及纵横比

  • 常用语法: axis(limits)

    • limits: [xmin xmax ymin ymax]
  • 举例:
    将x轴范围和y轴范围限定在某个区间内

x = linspace(0,2*pi);
y = sin(x);
plot(x,y,'-o')
axis([0 2*pi -1.5 1.5])
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

  • 引申:限制坐标轴范围的同时,x轴和y轴的刻度怎么改?

    • set(gca,’xtick’,1:2:10) : 将x轴上显示的刻度改为从1到10,然后间隔是2.

      x = linspace(0,2*pi);
      y = sin(x);
      plot(x,y,'-o')
      axis([0 2*pi -Inf Inf]) 
      set(gca,’xtick’,0:0.5*pi:2*pi)
      
      • 1
      • 2
      • 3
      • 4
      • 5

在这里插入图片描述

  • 小知识: gcf : 返回当前Figure对象的句柄;gca: 返回当前axes对象的句柄。

axes

  • 目的: 在图窗定义多个坐标区域

  • 常用语法:axes(Name,Value)

    • 坐标区布局(调整axes其他属性的还有很多,可以自己去参阅官方文档)
      • 关键字: ‘Position’
      • [left bottom width height] 归一化
  • 举例:

figure
ax1 = axes('Position',[0.1 0.1 0.7 0.7]);
ax2 = axes('Position',[0.65 0.65 0.28 0.28]);
contour(ax1,peaks(20))
surf(ax2,peaks(20))
  • 1
  • 2
  • 3
  • 4
  • 5

  • 当我希望在同一个figure中大小合适的,在左边显示一个影像,右边显示一个plot时

    img=magic(256);
    plot_value=1:1:100;
    
    figure
    ax1 = axes('Position',[0.05 0.35 0.4 0.53]);
    imagesc(ax1,img);
    title(ax1,'')
    axis off
    ax2 = axes('Position',[0.55 0.35 0.4 0.53]);
    plot(ax2,plot_value,'r-','linewidth',1.5)
    title(ax2,'...')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    (直接用的axes,而没有用subplot, 想改变布局的话,自己调一下axes中’position’的数值)

在这里插入图片描述

参考链接

axis — MATLAB官方帮助

axes — MATLAB官方帮助

axes属性

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/534870
推荐阅读
相关标签
  

闽ICP备14008679号