Matlab:缺少条形图 x 轴标签

Matlab: Bar chart x-axis labels missing

我正在使用以下代码在 matlab 中创建条形图。

a = [1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9]
bar(a)
set(gca,'XTickLabel',{'one','two','three','four','five','six','seven','eight','nine','zero','one','two','three','four','five','six','seven','eight','nine'})

代码工作正常,除了 x 轴标签没有出现在它们在 x 轴上的相应位置上。我该如何解决这个问题?

当您设置 XTickLabel 时,您是在告诉 Matlab 用您提供的新文本替换 当前 每个刻度的文本。如果你只 运行 前两行,你会看到默认情况下 Matlab 已将 XTicks 放在 0:2:20 上。您可以通过首先告诉 Matlab 为每个单独的柱放置刻度,然后重新标记这些刻度来解决此问题:

a = [1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9]
bar(a)
set(gca, 'XTick', 1:length(a))
set(gca,'XTickLabel',{'one','two','three','four','five','six','seven','eight','nine','zero','one','two','three','four','five','six','seven','eight','nine'})

此时您的 x 轴会非常混乱...您可能希望使用 FileExchange 中的 rotateXLabels 函数或 Matlab14b 及更高版本的内置功能来研究旋转 XTickLabels .