如何减少闪亮的交互式 rmarkdown 利润?
How to reduce shiny interactive rmarkdown margins?
当 shiny-server 看到 .Rmd 文件而不是 ui.R 和 server.R 时,有什么方法可以减少右边距和左边距吗?正如您在下面看到的,window 的将近一半是左右边距。有没有办法修改内部 css
脚本来进行更改,或者是否有更简单的解决方案,通过在降价 header?
中添加 geometry
选项
下面是我在 Rstudio 中创建一个新的 Shiny Rmarkdown 文件时生成的示例代码:
---
title: "Untitled"
author: "Me"
date: "10/13/2015"
output: html_document
runtime: shiny
---
This R Markdown document is made interactive using Shiny. Unlike the more traditional workflow of creating static reports, you can now create documents that allow your readers to change the assumptions underlying your analysis and see the results immediately.
To learn more, see [Interative Documents](http://rmarkdown.rstudio.com/authoring_shiny.html).
## Inputs and Outputs
You can embed Shiny inputs and outputs in your document. Outputs are automatically updated whenever inputs change. This demonstrates how a standard R plot can be made interactive by wrapping it in the Shiny `renderPlot` function. The `selectInput` and `sliderInput` functions create the input widgets used to drive the plot.
```{r, echo=FALSE}
inputPanel(
selectInput("n_breaks", label = "Number of bins:",
choices = c(10, 20, 35, 50), selected = 20),
sliderInput("bw_adjust", label = "Bandwidth adjustment:",
min = 0.2, max = 2, value = 1, step = 0.2)
)
renderPlot({
hist(faithful$eruptions, probability = TRUE, breaks = as.numeric(input$n_breaks),
xlab = "Duration (minutes)", main = "Geyser eruption duration")
dens <- density(faithful$eruptions, adjust = input$bw_adjust)
lines(dens, col = "blue")
})
```
## Embedded Application
It's also possible to embed an entire Shiny application within an R Markdown document using the `shinyAppDir` function. This example embeds a Shiny application located in another directory:
```{r, echo=FALSE}
shinyAppDir(
system.file("examples/06_tabsets", package="shiny"),
options=list(
width="100%", height=550
)
)
```
Note the use of the `height` parameter to determine how much vertical space the embedded application should occupy.
You can also use the `shinyApp` function to define an application inline rather then in an external directory.
In all of R code chunks above the `echo = FALSE` attribute is used. This is to prevent the R code within the chunk from rendering in the document alongside the Shiny components.
看了一个Rmd文件生成的HTML,主要内容好像在div下面,有class main-content
,还有一个max-width
属性。查看rmarkdown
源代码,我相信也许会发生这种情况here。尝试添加 css 规则,例如 div.main-container { max-width: inherit; }
上面的 CSS 更改对我不起作用,因为我在 RStudio 中从 Rmd 渲染 HTML 时遇到了同样的问题,但这确实有效。在 Rmd 中的 YAML 之后添加:
<style>
.main-container {
max-width: 940px;
margin-left: 0;
margin-right: auto;
}
</style>
当 shiny-server 看到 .Rmd 文件而不是 ui.R 和 server.R 时,有什么方法可以减少右边距和左边距吗?正如您在下面看到的,window 的将近一半是左右边距。有没有办法修改内部 css
脚本来进行更改,或者是否有更简单的解决方案,通过在降价 header?
geometry
选项
下面是我在 Rstudio 中创建一个新的 Shiny Rmarkdown 文件时生成的示例代码:
---
title: "Untitled"
author: "Me"
date: "10/13/2015"
output: html_document
runtime: shiny
---
This R Markdown document is made interactive using Shiny. Unlike the more traditional workflow of creating static reports, you can now create documents that allow your readers to change the assumptions underlying your analysis and see the results immediately.
To learn more, see [Interative Documents](http://rmarkdown.rstudio.com/authoring_shiny.html).
## Inputs and Outputs
You can embed Shiny inputs and outputs in your document. Outputs are automatically updated whenever inputs change. This demonstrates how a standard R plot can be made interactive by wrapping it in the Shiny `renderPlot` function. The `selectInput` and `sliderInput` functions create the input widgets used to drive the plot.
```{r, echo=FALSE}
inputPanel(
selectInput("n_breaks", label = "Number of bins:",
choices = c(10, 20, 35, 50), selected = 20),
sliderInput("bw_adjust", label = "Bandwidth adjustment:",
min = 0.2, max = 2, value = 1, step = 0.2)
)
renderPlot({
hist(faithful$eruptions, probability = TRUE, breaks = as.numeric(input$n_breaks),
xlab = "Duration (minutes)", main = "Geyser eruption duration")
dens <- density(faithful$eruptions, adjust = input$bw_adjust)
lines(dens, col = "blue")
})
```
## Embedded Application
It's also possible to embed an entire Shiny application within an R Markdown document using the `shinyAppDir` function. This example embeds a Shiny application located in another directory:
```{r, echo=FALSE}
shinyAppDir(
system.file("examples/06_tabsets", package="shiny"),
options=list(
width="100%", height=550
)
)
```
Note the use of the `height` parameter to determine how much vertical space the embedded application should occupy.
You can also use the `shinyApp` function to define an application inline rather then in an external directory.
In all of R code chunks above the `echo = FALSE` attribute is used. This is to prevent the R code within the chunk from rendering in the document alongside the Shiny components.
看了一个Rmd文件生成的HTML,主要内容好像在div下面,有class main-content
,还有一个max-width
属性。查看rmarkdown
源代码,我相信也许会发生这种情况here。尝试添加 css 规则,例如 div.main-container { max-width: inherit; }
上面的 CSS 更改对我不起作用,因为我在 RStudio 中从 Rmd 渲染 HTML 时遇到了同样的问题,但这确实有效。在 Rmd 中的 YAML 之后添加:
<style>
.main-container {
max-width: 940px;
margin-left: 0;
margin-right: auto;
}
</style>