Как вставить сохраненный виджет Leaflet в вывод Rmarkdown HTML - PullRequest
1 голос
/ 08 мая 2020

Я создаю виджет Leaflet и сохраняю его локально:

library(htmlwidgets)
library(leaflet)
library(sf)

shp = st_read("/path/to/some/shapefile.shp")

m = shp %>%
  leaflet() %>%
  addProviderTiles(providers$CartoDB.Positron) %>%
  setView(lng = -70, lat = 40, zoom = 11)

saveWidget(m, "m.html")

Теперь я хочу загрузить этот виджет в блоке Rmarkdown:

---
title: "Title"
author: "author"
date: "5/8/2020"
output: html_document
---

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

etc etc etc

```{r}
function_that_loads_widget("m.html")
```

etc etc etc

Я пробовал htmltools::includeHTML() но при этом весь HTML выводит один большой виджет. Текст отчета не отображается.

Я понимаю, что могу поместить код, создавший виджет Leaflet, прямо в блок Rmarkdown, но я не хочу этого делать.

1 Ответ

0 голосов
/ 10 июля 2020

knitr :: include_url () кажется решением. Это работает для моего сообщения в блоге.

```{r, out.width="100%"}
knitr::include_url("url_of_html", height="1080px")
```
...