如何可视化R中非结构化网格的数据?

时间:2013-11-14 13:43:54

标签: r visualization grid-layout

我从数字海洋模型获得ASCII数据,该模型应用

形式的未构造网格
id   lat   lon   value

也许s.th.像

dsize <- 100
data=data.frame(id=seq(1:dsize), 
            lat=sort(runif(dsize)*10+2570740),
            lon=runif(dsize)*10+6926070,
            val=sin(2*pi*(1:dsize)/dsize) + runif(1,-1,1)*10)

我现在想用(x = lat,y = lon,z = val)来显示结果

  1. 3D,例如rgl库
  2. 2D,等高线图
  3. 沿lat或lon的部分
  4. 我卡住了,因为我没有达到增加x和y的值......

1 个答案:

答案 0 :(得分:2)

我认为如果你用val插值val变量会有所帮助。来自包akima的interp()函数。这就是你追求的目标吗?

enter image description here

require(rgl)
require(akima)

dsize <- 100
data=data.frame(id=seq(1:dsize), 
            lat=sort(runif(dsize)*10+2570740),
            lon=runif(dsize)*10+6926070,
            val=sin(2*pi*(1:dsize/dsize + runif(1,-1,1)*10)))

#use akima to interpolate a *val* surface
surf<-interp(data$lat,data$lon,data$val)

persp3d(x=surf$x, y=surf$y, z=surf$z,
    theta=-50, phi=-25, expand=0.75, 
    alpha=0.3, col="green", ticktype="detailed", 
    xlab="lat", ylab="long", zlab="level",axes=TRUE)

rgl.viewpoint( scale=c(1,1,2) )