我有一个"头部空间"我的闪亮应用程序中有一些selectInput小部件。下面有一些依赖于这些过滤器的图表。有没有办法冻结我闪亮的应用程序的上半部分(包含所有过滤器的应用程序),这样我可以向上滚动并查看不同的图表,同时让我的过滤器在顶部?
非常感谢!
答案 0 :(得分:0)
查看Bootstrap's Affix方法。那里有很多很好的教程。在Shiny中使用,它可能看起来像:
<强> ui.R 强>
library(shiny)
shinyUI(fluidPage(
titlePanel("Bootstrap Affix in Shiny"),
mainPanel(
div('data-spy'="affix", 'data-offset-top'="100",
wellPanel(
selectInput("pick", label = "Choose One", choices = c("A", "B", "C"))
)
),
plotOutput("sampleplot", height = "700px"),
h1("Some text"),
h1("Some text"),
h1("Some text"),
h1("Some text"),
h1("Some text"),
h1("Some text"),
h1("Some text"),
h1("Some text")
)
)
)
<强> server.R 强>
library(shiny)
library(ggplot2)
shinyServer(function(input, output) {
output$sampleplot <- renderPlot({
df <- data.frame(a = c(1,4,8), b = c(9,10,20))
ggplot(df, aes(x = a, y = b)) +
geom_point()
})
})
在应用的“www”目录中设置CSS文件
.affix {
top: 0;
width: 100%;
}
.affix-top {
width: 100%;
}