2011-06-18 58 views
17

我想使用bar函數獲得Matlab圖形,但是當繪製實際圖形而不是顯示每個條形圖下方的數字時,我想要顯示哪個數字表示實際值繪製。Matlab如何使用字符串代替條形圖中的數字

例如我有載體x = [1 2 3]和而不是顯示下的每個繪製杆1,2和3,我想顯示對應於這些值中的一個字符串y = {'sam'; 'alan'; 'ellie'}

enter image description here

莫非你請解釋我如何獲得這個?

回答

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

enter image description here

+0

使用platinummonkey的解決方案,包括 'XTICK',1:4(或1:numel(Labels))比單獨使用'XTickLable'更有效。在某些情況下,留下「XTick」可能導致標籤被取代。 – Jacob

+0

@Jacob:當然,指定'XTick'也無妨。我很好奇,你有沒有一個標籤放錯位置的例子? – Amro

+0

例如 figure(); 堅持; bar([10 22 2 11]); Label = {'#7','#8','#9','#10'}; set(gca,'XTickLabel',Label); hold – Jacob

相關問題