Gatsby Js и R Markdown - вязание листовок карт и других htmlwidgets по разметке - PullRequest
0 голосов
/ 06 мая 2020

Хочу включить HTML виджетов в файлы уценки (связанные с уценкой R). Когда я вяжу до уценки, вывод блока представляет собой строку JSON параметров для карты (а не HTML). Я создаю сайт stati c с помощью gatsby и использую gatsby-transformer-comment для создания страниц HTML из разметки. Есть ли способ принудительно связать фрагменты уценки до HTML, чтобы они работали при рендеринге в HTML с помощью gatsby?

Это простой документ, в котором я пытаюсь создать карту листовок:

---
title: "test-md"
author: "Matthew Whittle"
date: "06/05/2020"
output: md_document
always_allow_html: true
---

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

```

## R Leaflet Test

```{r}
require(leaflet)
require(tidyverse)

leaflet() %>% 
  addProviderTiles(provider = providers$OpenStreetMap) %>%
  addCircleMarkers(lng= -1.2, lat = 52.2)
```

Это результат уценки:

R Leaflet Test
--------------

    require(leaflet)

    ## Loading required package: leaflet

    require(tidyverse)

    ## Loading required package: tidyverse

    ## ── Attaching packages ────────────────────────────────────────────────────────────────────────────── tidyverse 1.2.1 ──

    ## ✓ ggplot2 3.2.0     ✓ purrr   0.3.2
    ## ✓ tibble  3.0.1     ✓ dplyr   0.8.3
    ## ✓ tidyr   1.0.0     ✓ stringr 1.4.0
    ## ✓ readr   1.3.1     ✓ forcats 0.4.0

    ## Warning: package 'tibble' was built under R version 3.6.2

    ## ── Conflicts ───────────────────────────────────────────────────────────────────────────────── tidyverse_conflicts() ──
    ## x dplyr::filter() masks stats::filter()
    ## x dplyr::lag()    masks stats::lag()

    leaflet() %>% 
      addProviderTiles(provider = providers$OpenStreetMap) %>%
      addCircleMarkers(lng= -1.2, lat = 52.2)

    ## PhantomJS not found. You can install it with webshot::install_phantomjs(). If it is installed, please make sure the phantomjs executable can be found via the PATH variable.

<!--html_preserve-->

<script type="application/json" data-for="htmlwidget-62d6ab32193235bc4477">{"x":{"options":{"crs":{"crsClass":"L.CRS.EPSG3857","code":null,"proj4def":null,"projectedBounds":null,"options":{}}},"calls":[{"method":"addProviderTiles","args":["OpenStreetMap",null,null,{"errorTileUrl":"","noWrap":false,"detectRetina":false}]},{"method":"addCircleMarkers","args":[52.2,-1.2,10,null,null,{"interactive":true,"className":"","stroke":true,"color":"#03F","weight":5,"opacity":0.5,"fill":true,"fillColor":"#03F","fillOpacity":0.2},null,null,null,null,null,{"interactive":false,"permanent":false,"direction":"auto","opacity":1,"offset":[0,0],"textsize":"10px","textOnly":false,"className":"","sticky":true},null]}],"limits":{"lat":[52.2,52.2],"lng":[-1.2,-1.2]}},"evals":[],"jsHooks":[]}</script>
<!--/html_preserve-->

...