首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >绘制三维彩色编码时间序列

绘制三维彩色编码时间序列
EN

Stack Overflow用户
提问于 2013-08-05 06:23:55
回答 1查看 1.3K关注 0票数 1

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

输出是由点组成的“云”:

我想要可视化轨迹,所以我的问题是:,我如何修改图形,使点的颜色表示时间数据的索引(时间)?只是为了让我的观点更清晰一点,想象一个点的轨迹,这些点的颜色“平稳”地从红色变为蓝色,这将使我能够可视化轨迹。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-05 07:54:49

我能想到两个答案:

在如下的3D线上使用surface函数:

代码语言:javascript
复制
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绘制单个点,如下所示:

代码语言:javascript
复制
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    

shg
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18051746

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档