matlab调整坐标轴位置和刻度方向

需求:matlab默认的横、纵轴分别在bottom和left。现在我想让横坐标在最上面,并且相对应的原点在”左上角“,即纵轴的0点应该在最上面(与原始方向相反)。

调轴位置命令:set(gca, ‘xaxislocation’, ‘top’);
调换轴刻度方向命令:set(gca, ‘ydir’, ‘reverse’);

实现如下:

clear ; clc

t = 1:0.1:10;
x = t.^2;

figure(1);

subplot(1,2,1);
plot(x,t);
xlabel('x'); ylabel('t'); grid on; 
title('默认布局')

subplot(1,2,2);
plot(x,t);
xlabel('x'); ylabel('t'); grid on; 
title('调换后布局');
set(gca,'xaxislocation','top');  % 把x轴换到上方
set(gca,'ydir','reverse');       % 把y轴刻度倒置

效果:

《matlab调整坐标轴位置和刻度方向》 坐标轴布局调整效果图.png

注意:set的命令都是在画完图之后才进行的,即在plot命令之后
理解:因为set中的gca参数的是当前图像,即set是对当前图像做调整;如果当前上面图都没画呢,那肯定调整不了!故set调整要在plot画完图之后。

    原文作者:胜负55开
    原文地址: https://www.jianshu.com/p/c74f3c40187d
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞