假设我有一个数据集,它由三个矢量组成,它们代表3D中的一个轨迹。这些时间数据可以用以下命令在Matlab中绘制: plot3( data (:,1),Data(:,2),Data(:,3),'.r');
输出是由点组成的“云”:

我想要可视化轨迹,所以我的问题是:,我如何修改图形,使点的颜色表示时间数据的索引(时间)?只是为了让我的观点更清晰一点,想象一个点的轨迹,这些点的颜色“平稳”地从红色变为蓝色,这将使我能够可视化轨迹。
发布于 2013-08-05 07:54:49
我能想到两个答案:
在如下的3D线上使用surface函数:
color=1:length(Data(:,1));
surface([Data(:,1);Data(:,1)],[Data(:,2);Data(:,2)][Data(:,3);Data(:,3)],[color ;color],...
'facecol','no','edgecol','interp');这是一个很好的诡计,但它设计了一条线。
如果要绘制点,可以定义RGB颜色,并使用hold on绘制单个点,如下所示:
hold on
for i=1:length(Data(:,1))
plot3(Data(i,1),Data(i,2),Data(i,3),'Color',[(i/100*255)/255 0/255 (255-(i/100*255))/255],'LineWidth',2)
end
shghttps://stackoverflow.com/questions/18051746
复制相似问题