Rayshader в файле Rmarkdown? - PullRequest
1 голос
/ 16 июня 2020
• 1000 *? Я понимаю, что это тяжелая графическая c интенсивная визуализация, но ищу какие-нибудь советы. спасибо, ниже мой код:
---
title: "rayshader"
author: "Daniel"
date: "6/16/2020"
output: 
  html_document:
  self_contained: yes
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```


```{r cars}
library(rayshader)

#Here, I load a map with the raster package.
loadzip = tempfile() 
download.file("https://tylermw.com/data/dem_01.tif.zip", loadzip)
localtif = raster::raster(unzip(loadzip, "dem_01.tif"))
unlink(loadzip)

#And convert it to a matrix:
elmat = raster_to_matrix(localtif)

elmat %>%
  sphere_shade(texture = "desert") %>%
  add_water(detect_water(elmat), color = "desert") %>%
  add_shadow(ray_shade(elmat, zscale = 3), 0.5) %>%
  add_shadow(ambient_shade(elmat), 0) %>%
  plot_3d(elmat, zscale = 10, fov = 0, theta = 135, zoom = 0.75, phi = 45, windowsize = c(1000, 800))
```

Ответы [ 2 ]

2 голосов
/ 07 августа 2020

От владельца пакета:

Чтобы встроить сюжет в документ RMarkdown, вам нужно позвонить по номеру rgl::rglwidget() после вызова вашего сюжета. Если вы встраиваете несколько графиков, вам также придется закрыть предыдущий график, используя rgl::rgl.close(), прежде чем строить следующий.

ссылка

Работает для меня.

1 голос
/ 17 июня 2020

Попробуйте добавить это в конец вашего кода:

Sys.sleep(0.2)
render_snapshot()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...