Matlab - 如何在条形图中使用字符串而不是数字

Sim*_*mon 17 matlab plot label bar-chart

我想使用该bar函数获得Matlab图形,但是当绘制实际图形而不是显示每个条形图下方的数字时,我想显示哪个代表实际绘制的值.

例如,我有矢量x = [1 2 3],而不是在每个绘制的条形图下面显示1,2和3,我想显示一个对应于这些值之一的字符串y = {'sam'; 'alan'; 'ellie'}

在此输入图像描述

你能解释一下我怎么能得到这个?

Amr*_*mro 21

x = [1 2 3];
str = {'sam'; 'alan'; 'ellie'};
bar(x)
set(gca, 'XTickLabel',str, 'XTick',1:numel(str))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述


pla*_*key 6

http://www.mathworks.com/matlabcentral/newsreader/view_thread/21178

Labels = {'a', 'b', 'c', 'd'};
set(gca, 'XTick', 1:4, 'XTickLabel', Labels);
Run Code Online (Sandbox Code Playgroud)

如果您需要更改Y标签,则将YTickLabel替换为XTickLabel