【问题标题】:Reversing xticklabels in MATLAB 2014B在 MATLAB 2014B 中反转 xticklabels
【发布时间】:2015-03-10 03:57:57
【问题描述】:

我正在运行 Matlab 2014b 并试图定义我的 xticklabels 但它不起作用。这是我的代码:

x = 0:1000:10000;
y = rand(1,11);
plot(x,y)
xlim([0 10000])
ax.XTick = [0 2000 4000 6000 8000 10000];
ax.XTickLabel = {'10000', '8000', '6000', '4000', '2000', '0'};
xlabel('Years Before Present','fontsize',8)

我希望 xticklabels 反转(不改变情节,因为它在几年前是这样)。我在哪里错了?

【问题讨论】:

    标签: matlab plot


    【解决方案1】:

    您需要使用ax 获取当前轴,然后在初始化ax.XTickLabel 后的代码中使用ax.XTickLabel = flip(ax.XTickLabel)ax.XTickLabel = ax.XTickLabel(end:-1:1) 翻转/反转刻度标签。

    这里是比较 beforeafter 效果的代码和建议的方法作为完全可运行的代码 -

    x = 0:1000:10000; %// Inputs
    y = rand(1,11);
    
    figure,
    plot(x,y)
    ax = gca;
    xlim([0 10000])
    ax.XTick = [0 2000 4000 6000 8000 10000];
    ax.XTickLabel = {'10000', '8000', '6000', '4000', '2000', '0'};
    xlabel('Years Before Present','fontsize',8), title('BEFORE')
    
    figure,
    plot(x,y)
    ax = gca;                                %// get current axes [CHANGE-1]
    xlim([0 10000])
    ax.XTick = [0 2000 4000 6000 8000 10000];
    ax.XTickLabel = {'10000', '8000', '6000', '4000', '2000', '0'};
    ax.XTickLabel = ax.XTickLabel(end:-1:1)  %// flip ticklabels [CHANGE-2]
    xlabel('Years Before Present','fontsize',8), title('AFTER')
    

    输出 -

    【讨论】:

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