2

我收集了大量数据,希望在 3-D 散点图中显示。数据包含在一个文本文件中。

数据是这样组织的

1 1 1 10.8
2 1 1 3.4
4 1 1 6.1
8 1 1 4.5
1 2 1 7.8
...
8 8 8 11.9

每行中的前三个标记应代表 (x,y,z) 点。在 3-D 散点图中,每个点都应该有一个点。

点的颜色取决于第四个标记。基本上,第四个参数越接近最大值,它就越接近红色。第四个参数越接近最小值,它就越蓝。

我很确定 scatter3(X,Y,Z,S,C) 函数可以做到这一点,但我不是专家。

这是我的数据变量包含的内容:

数据变量

4

1 回答 1

3

试试这个(假设data是您在问题中提出的数组):

x = data(:,1);
y = data(:,2);
z = data(:,3);
s = ones(size(data,1), 1) * 20; %sizes of markers
c = data(:,4); %color data

scatter3(x,y,z,s,c);
colorbar;

或者你可以简单地内联:

scatter3(data(:,1),data(:,2),data(:,3),ones(size(data,1), 1)*20,data(:,4));
colorbar
于 2011-10-19T16:02:32.563 回答