![](/img/trans.png)
[英]Download table generated independetly in renderTable output in R shiny
[英]R Shiny: dnn in table not appearing in renderTable()
我有一个用renderTable()
制成的表,我想标记行和列(不是每一个,只是整体)。 当我在控制台中运行代码时,将显示标签。 但是,当我使用renderTable()
在活动的Shiny环境中运行代码时,该表将显示而没有标签。 这是我的(摘要)代码:
shinyUI(pageWithSidebar(
headerPanel("Hello Shiny!"),
sidebarPanel(),
mainPanel(
tabPanel("Pairwise Table", tableOutput("pairs") )
))
shinyServer(function(input, output, session) {
output$pairs <- renderTable({
dat <- data.frame(hiv=c(0,1,0,0,0,1,1,0,1,1),
age=c(50,55,50,60,40,45,40,55,50,60))
tab <- table(dat$hiv, dat$age, dnn=c("hiv","age"))
tab
})
})
当我在控制台的output $ pairs中运行代码时,它将生成带有标签的表(这是我想要的):
age
hiv 40 45 50 55 60
0 1 0 2 1 1
1 1 1 1 1 1
当我浏览Shiny时,它会绘制同一张表,只是没有任何标签。 知道为什么吗?
似乎Shiny不支持这种表格显示。 我开发了一个解决方案,希望对您有用。
除了使用table
,还可以使用ftable
并将其包装在data.frame
。 这是您的shinyServer
应该是这样的:
shinyServer(function(input, output, session) {
output$pairs <- renderTable({
dat <- data.frame(hiv=c(0,1,0,0,0,1,1,0,1,1),
age=c(50,55,50,60,40,45,40,55,50,60))
tab <- data.frame(format(ftable(dat),
method = "compact", quote = F))
tab
}, include.rownames=FALSE, include.colnames = FALSE)
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.