Matlab多维散点图
Matlab multidimensional scatter
我有一个 nx4 矩阵,其中每一行都是一个观察值。
三个三列代表变量,第四个'fitness'参数。
我想在 3D 散点图中显示它,其中每个轴都是我的变量之一,然后根据它与第四列中的极端之一的接近程度为每个点着色。
例如,假设适应度介于 0 和 1 之间。我希望适应度为 0 的观察结果为蓝色,适应度为 1 的观察结果为红色,而介于两者之间的相应阴影。
关于如何最好地做到这一点有什么建议吗?
谢谢!
使用 scatter3
和适当的颜色图:
scatter3(data(:,1), data(:,2), data(:,3), 10, data(:,4), '*')
colormap(hsv)
colorbar
哪里
data
是你的矩阵
10
是标记大小
'*'
是标记形状
hsv
是选择的颜色图
函数 scatter3
有一个颜色输入参数。但是您还需要定义标记的大小。
% Generate example data,
X=rand(10,1)*10;
Y=rand(10,1)*3;
Z=rand(10,1)*5;
fit=rand(10,1)*3+10;
scatter3(X,Y,Z,ones(size(X))*40,fit,'fill')
我有一个 nx4 矩阵,其中每一行都是一个观察值。
三个三列代表变量,第四个'fitness'参数。
我想在 3D 散点图中显示它,其中每个轴都是我的变量之一,然后根据它与第四列中的极端之一的接近程度为每个点着色。
例如,假设适应度介于 0 和 1 之间。我希望适应度为 0 的观察结果为蓝色,适应度为 1 的观察结果为红色,而介于两者之间的相应阴影。
关于如何最好地做到这一点有什么建议吗?
谢谢!
使用 scatter3
和适当的颜色图:
scatter3(data(:,1), data(:,2), data(:,3), 10, data(:,4), '*')
colormap(hsv)
colorbar
哪里
data
是你的矩阵10
是标记大小'*'
是标记形状hsv
是选择的颜色图
函数 scatter3
有一个颜色输入参数。但是您还需要定义标记的大小。
% Generate example data,
X=rand(10,1)*10;
Y=rand(10,1)*3;
Z=rand(10,1)*5;
fit=rand(10,1)*3+10;
scatter3(X,Y,Z,ones(size(X))*40,fit,'fill')