2017-05-24 89 views
1

我正在讀取很多txt文件中的列,並將列2繪製爲列9,如我的代碼所示。如何更改x軸上的值的名稱

x= str2num(tmp{2}); 
    y= str2num(tmp{9}); 
    scatter(x, y) 

列2對每個txt文件,並在一列固定的數字有一個名字,例如:

txt-file 1:  txt-file 2: 
JM 100 0.9  KG 200 1.0 
JM 100 0.7  KG 200 0.7 
JM 100 0.6  KG 200 0.3 

所以,我的問題是。我怎樣才能得到的X軸(100,200等)的值是JM和KG而不是數字?

回答

0

ploting數據後:

set (gca,'xtick',[100,200]): 
set (gca, 'xticklabels', {'JM';'KG'}); 

如果您有更多,你可以添加爲好。

0

如果你正在閱讀從每個文件標籤(JM和KG),你可以把它們放在一個矩陣:

tags = ['JM';'KG']; 

然後,您可以用這些標籤設置標籤

set(gca, 'xticklabel', tags); 
0

它似乎在每個散點圖中都繪製了同一個x值中的所有點,所以您必須首先將刻度值設置爲您想要的值。

在Matlab中2014B以後,你可以得到的句柄對象,並直接改變它:

h = scatter(x, y); 
h.Parent.XTick = x(1); 
h.Parent.XTickLabel = tmp{1}(1);