首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >图和动画(x,y,z)的一个对象的位置数据随时间(t)在R

图和动画(x,y,z)的一个对象的位置数据随时间(t)在R
EN

Stack Overflow用户
提问于 2014-11-10 17:28:03
回答 2查看 2.6K关注 0票数 1

我试图绘制物体在三维空间中的位置(x,y,z坐标),这样我就可以确定物体的路径。

我发现很难想象这会是怎么回事。我可以在三维空间中绘制(x,y,z)坐标,但是如何可视化时间的进展呢?

我使用的是R,下面是scatterplot3d()函数在R中的结果。

请您指导我如何可视化数据集。此外,如果您可以为这种类型的可视化提供任何其他工具,这也会对我有所帮助。

image

样本数据集

代码语言:javascript
复制
Time    X   Y   Z

1   245.00  198.00  247.00
2   247.00  197.50  246.50
3   249.00  198.20  245.20
5   250.25  200.50  243.75
6   249.20  202.80  242.40
7   251.00  201.75  241.50
8   249.40  199.20  241.80
9   252.80  196.20  242.20
10  256.60  200.80  242.20
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-10 18:10:14

对于交互式的、基于浏览器的动画,请查看animation包:

代码语言:javascript
复制
library(animation)
df<-matrix(rnorm(90),ncol=3)
saveHTML({
    for (i in 1:nrow(df)) {
    pt<-df[i,]
    scatterplot3d(pt[1],pt[2],pt[3],
    xlim=c(-4,4),ylim=c(-4,4),zlim=c(-4,4)
      )}
})

编辑:包括library调用

或者这个,它使用OP的数据并绘制出进化的路径。

代码语言:javascript
复制
library(animation)
library(scatterplot3d)
saveHTML({
  for (i in 2:nrow(df)) {
    with(df[1:i,],scatterplot3d(X,Y,Z,type="l",
         xlim=range(df$X),ylim=range(df$Y),zlim=range(df$Z)))
    }
})
票数 4
EN

Stack Overflow用户

发布于 2014-11-10 18:06:57

展开注释(调用示例df)。

代码语言:javascript
复制
library(rgl)
with(df,lines3d(X,Y,Z))
with(df[1,],points3d(X,Y,Z,size=7,col="red"))
with(df[-1,],points3d(X,Y,Z,col="blue"))
axes3d()
title3d(xlab="X",ylab="Y",zlab="Z")

此代码生成数据的可旋转3D图。下面是屏幕截图。红点是起点。

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

https://stackoverflow.com/questions/26849441

复制
相关文章

相似问题

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