问题标签 [rayshader]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
198 浏览

r - 从 xy UTM 值获取光栅矩阵中正确的 col 和 row 值

我正在尝试使用rayshader包函数呈现文本render_label

我在 WGS84 UTM 中的栅格:

下载栅格的链接。

高程矩阵:

我的 rgl 渲染:

从 x 和 y utm 坐标获取行号和列号:

渲染文本:

文本出现在 DEM 模型中的错误位置。我得到了这些 xy 值:

使用试错法,我发现正确的值为 row = 180 和 col = 278。我也收到此警告:

0 投票
1 回答
615 浏览

r - 无法从光线着色器包中找到函数“plot_gg”

运行此脚本并收到错误:找不到函数“plot_gg”

再次尝试卸载并安装 ggplot2

运行 3.6.0

期待 3D 图表,但看不到它。获取找不到函数“plot_gg”

0 投票
0 回答
321 浏览

r - 如何将此光线着色器图转换为 Gif?

我用光线着色器制作了这张很酷的地图,以绘制该县的工业用水量。但我不知道如何从用鼠标移动的情节转到 Gif。这是非 Gif Rayshader 绘图的代码:

我不知道从这里到 gif 阶段要从哪里开始。有人有建议吗?这方面的文档不是很好,就像三个 github 页面有很多代码和完成的结果,没有解释发生了什么。无论如何,如果有人可以帮忙,那就太酷了。

0 投票
1 回答
129 浏览

r - 我可以使用光线着色器重新缩放 R 中的 x/y 轴纵横比吗?

我有一些来自实验室设备的数据,可以通过等高线图/热图表示为矩阵。

我想尝试用rayshader包在 R 中说明这些数据。

我的问题是数据的形状远非正方形,矩阵是 33 行 x 48003 列。当我用它绘制时,rayshader我得到一条细线:

有没有办法rayshader通过操纵 x/y 纵横比将其绘制为正方形?或者以等效的比例绘制它们(一个维度收集数据的速度比另一个维度快得多)?我在文档中找不到任何内容。

在此示例中,我尝试命名行和列,以便在 10 分钟内收集它们,但这并没有改变结果。

最终结果应类似于:

在此处输入图像描述

非常感谢。

0 投票
1 回答
772 浏览

r - 提高 R 光线着色器图像的分辨率

我正在尝试使用rayshader 包制作图像。我很高兴能够使用如下代码创建一个 png 文件:

不幸的是,我无法弄清楚如何使输出图像具有更高的分辨率。我尝试调整窗口大小,在低值下似乎会有所不同,但我遇到了某种上限,输出图像的分辨率不会超过 1372 x 893。我该怎么做才能获得输出分辨率约为 3200 x 3200 的图像?

谢谢!

在此处输入图像描述

0 投票
1 回答
388 浏览

leaflet - 为 Rayshader 校正卫星图像叠加

我试图通过覆盖更新(更高细节)卫星图像(我从 { leaflet} 包中获得)来改善 Rayshader 的外观,但覆盖与 3D 渲染不匹配。

理想情况下,我正在寻找可以获取全球卫星图像的开源解决方案。如果您找到我感兴趣的地区(夏威夷)的更详细数据,则可获得奖励积分。

geoviz使用 { } 和 { } 的一种方法使用rayshaderslippy_overlay()函数从Mapbox卫星mapbox-streets-v8mapbox-terrain-v2mapbox-traffic-v1terrain-rgbmapbox-incidents- v1 ) 或雄蕊。虽然我发现mapbox-terrain-v2是最好的,但它仍然缺乏我想要的细节。因为它需要为 mapbox 设置一个 API,所以我只使用下面的stamen/watercolor

在此处输入图像描述

我正在尝试调整Will Bishop工作流程以获取leaflet的覆盖,但结果非常奇怪。Will 的方法有点不同,因为它从 USGS 获取高程数据,它没有必须的海湾高程 - 所以我使用了geoviz

边界框

我的山体阴影面积是geoviz多少?

好的,因此需要叠加图像,780 x 780因此我修改了辅助函数以下载带有World_Imagery基本地图的叠加层:

现在下载文件,然后加载它

卫星底图

好的,让我们制作情节

如您所见,叠加图像旋转到山体阴影。

在此处输入图像描述

现在我也意识到,当您尝试显示深海矩阵数据时,使用边界框方法获取卫星并不理想。以某种方式以编程方式对该叠加层进行子集化是理想的,但一旦我弄清楚如何旋转叠加层,我可能最终会使用inkscape 。

我尝试使用 { magick} 的image_rotate()功能无济于事:

magick改变了尺寸:

并且会给出一个错误rayshader

add_overlay(., overlay_img, alpha = 0.8) 中的错误:参数 3 匹配多个形式参数

0 投票
1 回答
520 浏览

r - R Rayshader 提升了我们的地图和点

我正在尝试基于美国地图创建一个 stl 文件,该地图具有不同的位置,如点,基于数据值的不同高度。

我可以相对容易地创建点部分。

但是,当我使用光线着色器保存到 stl 时,美国部分是平坦的。

在此处输入图像描述

换句话说,它基本上是一个带有一些尖刺的平坦表面。所以我想我会尝试在此处添加一些州级数据,这将为美国部分增加一些海拔。

但发生的情况是,美国部分的升高抹去了点数据。

在此处输入图像描述

最终我想要的是美国部分略微升高,然后我的点数据高于此。我尝试将点数加倍以使其变大等,但我无法得到它。

我想知道是否需要放弃rayshader ggplot函数,并尝试使用矩阵,但我仍在学习使用空间数据我不知道将美国地图数据转换为矩阵并正确标记的好方法所述矩阵上的点。

我愿意接受任何和所有建议。

0 投票
0 回答
83 浏览

python - 在 Python 或 R 中读取 PTM(多项式纹理映射)文件

我有几个 PTM(多项式纹理映射)文件,我想用 Python 或 R 读取它们以进行可视化和计算测量。我不确定如何阅读这些文件,并希望在理想情况下使用 X、Y 和 Z 坐标。

示例可在此处找到:http: //palimpsest.stmarytx.edu/integratingdataarchive/Pal1/Acce/

  • 20140220-Pal1-45-Acce-04-50m-127.ptm
  • 20140220-Pal1-45-Acce-04-50m-e.ptm
  • 20140220-Pal1-45-Acce-04-50m.ptm

如何构建和查看这些文件的背景信息可在此处找到,它本质上是一种光线着色技术: http : //cultureheritageimaging.org/What_We_Offer/Downloads/Process/ http://cultureheritageimaging.org/Technologies/RTI/

提前感谢您提供正确方向的任何帮助或指示。

0 投票
1 回答
301 浏览

r - Rayshader plot_gg 在运行示例时崩溃

我试图从https://www.tylermw.com/3d-ggplots-with-rayshader/重现以下光线着色器示例:

但运行 plot_gg 行我收到以下错误消息:

if (whichtype %in% c("text", "line")) { 中的错误:参数长度为零

知道那里发生了什么吗?

0 投票
1 回答
203 浏览

r - 如何在动画期间保留标签、指南针和标题的同时将光线着色器贴图转换为 mp4 视频?

感谢这个精彩的教程,我创建了一个 3D 地图的 gif 图像,以便可视化惠灵顿市中心 12 米海平面上升的蔓延!

地图截图:

现在我想知道是否可以在使用“render_movie”功能创建的视频中保留标签、比例尺和指南针?我一直在寻找很多教程,但到目前为止还没有成功!有人可以帮我解决这个问题吗?

不幸的是,我只能通过代码的最后一部分在惠灵顿周围获得一个不错的场景(但没有标签,也没有海平面上升......):(