Matlab - Как использовать строки вместо чисел в гистограмме - PullRequest
17 голосов
/ 18 июня 2011

Я хочу получить число Matlab, используя функцию bar, но когда отображается фактическая фигура вместо того, чтобы отображать числа под каждой полосой, которую я хочу отобразить, которая представляет это действительное значение, нанесенное на график.

Например, у меня есть вектор x = [1 2 3] и вместо того, чтобы показывать 1, 2 и 3 под каждым построенным графиком, я хочу отобразить строку, соответствующую одному из этих значений y = {'sam'; 'alan'; 'ellie'}

enter image description here

Не могли бы вы объяснить, как я могу получить это?

Ответы [ 2 ]

21 голосов
/ 18 июня 2011
x = [1 2 3];
str = {'sam'; 'alan'; 'ellie'};
bar(x)
set(gca, 'XTickLabel',str, 'XTick',1:numel(str))

enter image description here

6 голосов
/ 18 июня 2011

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

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

если вам нужно изменить Y-метки, тогда замените YTickLabel на XTickLabel

...