【问题标题】:How to reverse x-axis without changing image?如何在不改变图像的情况下反转 x 轴?
【发布时间】:2014-07-18 15:47:04
【问题描述】:

在 MATLAB 中,我想反转我的 x 轴,但我实际上并不想在执行此操作时反转图像/图形。我希望图像/图形保持不变,而我只是简单地反转 x 轴刻度。

【问题讨论】:

    标签: matlab axis-labels


    【解决方案1】:
    x=0:10;
    y=x.^2;
    
    plot(x,y);
    set(gca,'XTickLabel',fliplr(x));
    

    编辑:要选择小数位数,请使用:

    set(gca,'XTickLabel',sprintf('%.2f |',fliplr(x)'));
    

    2 是您想要的小数位数

    【讨论】:

    • 这行得通!...但由于某种原因,现在它使所有刻度线都变成了小数点后 6 位。我如何让它只取整值,即现在是这样的:0.342058,但我只是希望它显示 0.34
    • 它只会让我执行它看到的最后一个 set() 命令。所以我可以得到我想要的小数,但是我失去了相反的东西。如何在 set() 命令下将其全部放入一行代码中?
    【解决方案2】:

    您可以通过修改 axis 对象的 XTickLabel 属性来做到这一点:

    x = 1:10;
    axishandle = axes;
    plot(x)
    
    oldticks = get(axishandle,'XTickLabel');
    newticks = fliplr(str2num(oldticks).');
    set(axishandle,'XTicklabel',newticks);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多