我想创建一个交互式的3D湖泊深度图,最好使用plotly
或rgl
库。我已从SpatialLinesDataFrame
等高线中提取了数据,其轮廓为高斯/克鲁格/ EPSG:31468 CRS,即公制单位。现在,每条轮廓线都会产生一组具有相同深度值的坐标。结果数据帧相当大,但看起来像这样:
set.seed(41)
xx <- rnorm(100,4448929,100)
yy <- rnorm(100,5308097,100)
zz <- c(rep(-10,10),rep(-20,10),rep(-30,10),rep(-40,10),rep(-50,10),rep(-60,10),rep(-70,10),rep(-80,10),rep(-90,10),rep(-100,10))
df <- data.frame(xx,yy,zz)
我曾尝试使用this示例中的plotly
和this中的rgl
来绘制数据。在这两种情况下,我都会收到与我的数据不是矩阵格式有关的错误消息,即x和y值分别表示为行号和列号。
有效的方法是在add_trace
中使用plotly
命令:
plot_ly() %>% add_trace(df,x = ~df$xx, y = ~df$yy, z = ~df$zz,type="mesh3d")
但是,生成的图不仅缺少add_surface
命令的精美颜色图例,而且更重要的是,相对于z值扭曲了x和y值。尽管z值具有相同的度量单位,但它们显示的z值太大。
我也曾尝试像this中那样将数据帧重塑为矩阵,但是它要么根本不起作用,要么给了我几乎全部由NA组成的矩阵。我只能推测,与该范围内的坐标的所有x-y组合相比,附加了深度值的坐标的数量很少?
任何建议将不胜感激-谢谢!
答案 0 :(得分:1)
这些是随机定位的点,因此.antMatchers("/mensagem/*").hasRole("CLIENTE")
无法直接处理它们。但是,您可以按照rgl::persp3d
中的示例进行三角剖分,然后进行绘制。例如,
?rgl::persp3d.deldir
这会产生非常丑陋的画面,但是通过一些工作(例如,固定轴标签,使用实际数据),您应该会得到一些合理的信息。