은이 질문은 @Yihui의이 대답은 잘 rmarkdown에서 루프에서 dygraphs 플롯을 만드는 방법을 자세히 For loop over dygraph does not work in RRmarkdown의 적용 루프에서 생성 된 견본 사이에 간격을 어떻게 추가합니까?
관련이있다. 그러나 눈에 띄게 알 수 있듯이 플롯 간에는 간격이 없습니다. 이것들이 많을 때 읽는 것은 아주 어려워집니다.
```{r}
library(dygraphs)
lungDeaths <- cbind(mdeaths, fdeaths)
res <- lapply(1:2, function(i) dygraph(lungDeaths[, i]))
htmltools::tagList(res)
```
맞춤 적용 기능 자체 내에서 여기에서 생성 된 각 플롯간에 간격, 텍스트, 가로 규칙 등을 추가하는 방법이 있습니까?
현재 내 해결 방법은 dyOptions titleHeight 인수와 함께 제목 위에 패딩을 설정하는 외부 CSS를 가리키는 dyCSS 인수를 전달하는 것입니다. 예를 들어 titleHeight 인수를 50px로 설정 한 다음 제목 자체를 25px로 설정하고 상단 패딩 높이를 25px로 설정할 수 있습니다.
---
title: "test"
author: "test"
date: "test"
output: html_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
```
```{r}
library(dygraphs)
lungDeaths <- cbind(mdeaths, fdeaths)
res <- lapply(1:2, function(i) {
dygraph(lungDeaths[, i], main = "Lung Deaths") %>%
dyOptions(titleHeight = 50) %>%
dyCSS("dygraph.css")
})
htmltools::tagList(res)
```
그리고 dygraphs.css 파일 :
.dygraph-title {
font-size: 25px;
padding-top: 25px;
}
그리고 플롯 제목을 원하지만, 여전히 플롯 사이의 분리를 원하지 않는 경우, 내가 그렇게 같은 제목으로 LINEBREAK 전달 :
```{r}
library(dygraphs)
lungDeaths <- cbind(mdeaths, fdeaths)
res <- lapply(1:2, function(i) {
dygraph(lungDeaths[, i], main = "<br>") %>%
dyOptions(titleHeight = 50) %>%
dyCSS("dygraph.css")
})
htmltools::tagList(res)
```
공백을 추가하는 방법이 있지만 가능한 경우 외부 CSS를 사용하지 않는 것이 좋습니다. 말할 것도없이, 플롯 사이에 다른 객체 (예 : 텍스트 또는 수평선 규칙)를 추가 할 수 없습니다. 함수 호출의 각 반복 사이에 이러한 객체를 수동으로 추가하는 방법이 있습니까?
편집 : 그래서 아래의 답변에 따라, 우리는 또한과 같이 각 반복 사이의 휴식 시간에 추가 할 수 있습니다 : 이것은 꽤 좋은 것 같습니다
```{r}
library(dygraphs)
lungDeaths <- cbind(mdeaths, fdeaths)
res <- lapply(1:2, function(i) {
dygraph(lungDeaths[, i])
})
invisible(lapply(1:2, function(i) {
if (!exists("l")) {
l <<- list()
}
l[[i]] <<- htmltools::tags$br()
}))
out <- c(rbind(l, res))
htmltools::tagList(out)
```
, 내가 다른 생각을 듣고 싶네 있지만.
데이터가 어떻게 구성되어 있는지에 따라 다른 적용 또는 유사한 호출을 통해 '공간'목록을 생성 할 수 있습니다. –