如何更改x轴

时间:2017-05-24 13:12:26

标签: matlab

我正在读取许多txt文件中的列,并将第2列与第9列相关联,就像我的代码一样。

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

第2列对于每个txt文件是常量,在第1列中,数字具有名称,例如:

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而不是数字?

3 个答案:

答案 0 :(得分:0)

绘制数据后:

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

如果您有更多,也可以添加。

答案 1 :(得分:0)

如果您正在阅读每个文件中的标签(JM和KG),您可以将它们放在矩阵中:

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

然后您可以使用这些标签设置标签

set(gca, 'xticklabel', tags);

答案 2 :(得分:0)

似乎在每个散点图中,您绘制了相同x值中的所有点,因此您必须首先将刻度值设置为您想要的值。

在Matlab 2014b及更高版本中,您可以获取对象的句柄并直接更改它:

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