我在这里使用ScatterD3创建了一个基本的闪亮应用程序,但是当我尝试将其嵌入ioslides
演示文稿时,它会被切断并出现滚动条。幻灯片可以轻松容纳整个应用程序(我已经测量了大小),但ioslides
或shiny
选择对其进行分区。我需要绘制这个大小的情节,因为在我的真实项目中,我在传奇中有一个很长的列表,需要高度在720px左右。
这是代码:
编辑 使用Joris的建议并删除不必要的wellPanel,我将高度重置为550,这在幻灯片范围内足够小。我仍然得到这个滚动条,并且觉得必须有一种方法来调整渲染的高度。基本上,我想使用整个幻灯片并用这个应用程序填充它。
```{r, echo=FALSE}
library(scatterD3)
ui <- fluidPage(
scatterD3Output("distPlot", height = "550px")
)
server <- function(input, output) {
output$distPlot <- renderScatterD3({
mtcars$names <- rownames(mtcars)
scatterD3(data = mtcars, x = wt, y = mpg, lab = names,
col_var = cyl, symbol_var = am,
xlab = "Weight", ylab = "Mpg", col_lab = "Cylinders",
symbol_lab = "Manual transmission")
})
}
shinyApp(ui = ui, server = server)
```
我尝试将options = list(height = 1080)
添加到shinyApp调用中。我还查看了this post,设置<div style="margin-left:-65px; margin-top:-70px; width:112%; height:130%;">
启用了我想要的大部分功能,但它仍然拒绝调整高度参数,这对我来说是最重要的。我尝试添加自定义CSS以使溢出可见,但这些解决方案似乎都不起作用。
答案 0 :(得分:3)
您应该正确设置页面,以便控件实际位于绘图旁边,并使用函数width
的{{1}}和height
参数。
请记住,虽然幻灯片可能看起来足够大,但您仍需要为标题预留一些空间。因此,对于720px的高度,情节实际上并不适合幻灯片。
编辑:Ioslides还允许您使用自定义css文件。 iframe是构建幻灯片内容的实际帧。操纵那个可以给你更多的空间。接下来,您可以使用幻灯片本身的大小以及水平和垂直位置。
将以下内容放在名为scatterD3Output
的文件中,与Rmd文件位于同一目录中:
temp.css
并将slides > slide {
width: 1000px;
height: 800px;
padding: 10px 20px;
left: 46%;
top: 45%;
}
iframe {
height: 900px;
}
添加到.Rmd文件中,如下所示:
css: temp.css
你可以玩这些以便更好地适应。
旁注:在许多情况下,完全不需要创建整个应用程序。如果您只是使用简单的绘图进行更新,您可以将UI和服务器端分别放在自己的R块中,并使用---
runtime: shiny
output:
ioslides_presentation:
css: temp.css
---
##
```{r, echo=FALSE}
library(scatterD3)
ui <- fluidPage(
fluidRow(
column(4,
wellPanel(
selectInput("Living", "Choose Life",
choices = c("Life", "Death"))
)
),
column(8,
scatterD3Output("distPlot", height = "550px"))
)
)
server <- function(input, output) {
output$distPlot <- renderScatterD3({
mtcars$names <- rownames(mtcars)
scatterD3(data = mtcars, x = wt, y = mpg, lab = names,
col_var = cyl, symbol_var = am,
xlab = "Weight", ylab = "Mpg", col_lab = "Cylinders",
symbol_lab = "Manual transmission")
})
}
shinyApp(ui = ui, server = server)
```
来操作所有输出函数。这不适用于outputArgs
套餐,但无论如何都要知道这件事。
scatterD3