如何用matlab画散点图

首先我有一个记事本文件“a.txt"
里面有许多数据
1.333329 0.609044 1
1.336927 0.607161 1
1.331997 0.602865 1
1.352869 0.590259 2
1.318551 0.583706 2
1.333241 0.585688 3
.......
.......
首先我想要matlab从文件中读入数据
然后以前面两个数为X ,Y,第三个数相同的点画为同一个颜色,比如第三个数字
都为1,就都画成红色的点。
麻烦高手帮忙解答一下,有点急,在线等答案,谢谢。

A = load('C:\******\a.txt');
A1 = A(A(:,3) == 1,1:2);
A2 = A(A(:,3) == 2,1:2);
A3 = A(A(:,3) == 3,1:2);
plot(A1(:,1),A1(:,2),'r*',A2(:,1),A2(:,2),'bo',A3(:,1),A3(:,2),'g>')追问

那个,我的第三个数字是不定的,即不一定只有三个,具体多少要从文件里读入,即从1-n,
不过我可以在文件的第一行给出一共有几个数字。还有最后三个数字也不是排好的。
比如
5
1.333329 0.609044 1
1.336927 0.607161 1
1.331997 0.602865 2
1.352869 0.590259 3
1.318551 0.583706 4
1.333241 0.585688 2
1.343258 0.569568 5
1.338635 0.545928 3
.........
........

追答

A = load('C:\******\a.txt');
n = max(A(:,3)); % 不需要在文件的第一行给出一共有几个数字
tmp = {'r*','go','b<','c.','mv'}; % 有n个就要输入n个颜色和点的形状
hold on
for i = 1 : n
B{i} = A(A(:,3) == i,1:2);
plot(B{i}(:,1),B{i}(:,2),tmp{i});
end

温馨提示:答案为网友推荐,仅供参考
相似回答