以编程方式创建选项卡并在降价中绘制
Programmatically create tab and plot in markdown
我正在尝试在我的 rmd
中创建动态数量的标签,其中包含一些内容。
一个也没有用。
像这样:
---
title: "1"
output: html_document
---
```{r }
library(highcharter)
library(tidyverse)
iris %>%
dplyr::group_split(Species) %>%
purrr::map(.,~{
# create tabset for each group
..1 %>%
hchart("scatter", hcaes(x = Sepal.Length, y = Sepal.Width))
})
```
您可以设置 results = 'asis'
knitr 选项以使用 cat
在地图函数中生成选项卡。
让 Highcharter
与 asis
一起工作比较棘手:
Highchart
需要在 asis
chunck 之前调用一次,可能是为了正确初始化,因此第一个空图表。
- 打印
asis
chunck 中的图表,HTML 输出以 character
格式发送到 cat
试试这个:
---
title: "Test tabs"
output: html_document
---
`r knitr::opts_chunk$set(echo = FALSE, warning = FALSE, message = FALSE, cache = F)`
```{r}
library(highcharter)
library(tidyverse)
# This empty chart is necessary to initialize Highcharter in the tabs
highchart(height = 1)
```
```{r, results = 'asis'}
cat('## Tabs panel {.tabset} \n')
invisible(
iris %>%
dplyr::group_split(Species) %>%
purrr::imap(.,~{
# create tabset for each group
cat('### Tab',.y,' \n')
cat('\n')
p <- hchart(.x,"scatter", hcaes(x = Sepal.Length, y = Sepal.Width))
cat(as.character(htmltools::tagList(p)))
})
)
```
请注意,虽然此解决方案运行良好,但
我正在尝试在我的 rmd
中创建动态数量的标签,其中包含一些内容。
像这样:
---
title: "1"
output: html_document
---
```{r }
library(highcharter)
library(tidyverse)
iris %>%
dplyr::group_split(Species) %>%
purrr::map(.,~{
# create tabset for each group
..1 %>%
hchart("scatter", hcaes(x = Sepal.Length, y = Sepal.Width))
})
```
您可以设置 results = 'asis'
knitr 选项以使用 cat
在地图函数中生成选项卡。
让 Highcharter
与 asis
一起工作比较棘手:
Highchart
需要在asis
chunck 之前调用一次,可能是为了正确初始化,因此第一个空图表。- 打印
asis
chunck 中的图表,HTML 输出以character
格式发送到cat
试试这个:
---
title: "Test tabs"
output: html_document
---
`r knitr::opts_chunk$set(echo = FALSE, warning = FALSE, message = FALSE, cache = F)`
```{r}
library(highcharter)
library(tidyverse)
# This empty chart is necessary to initialize Highcharter in the tabs
highchart(height = 1)
```
```{r, results = 'asis'}
cat('## Tabs panel {.tabset} \n')
invisible(
iris %>%
dplyr::group_split(Species) %>%
purrr::imap(.,~{
# create tabset for each group
cat('### Tab',.y,' \n')
cat('\n')
p <- hchart(.x,"scatter", hcaes(x = Sepal.Length, y = Sepal.Width))
cat(as.character(htmltools::tagList(p)))
})
)
```
请注意,虽然此解决方案运行良好,但