我已经在我闪亮的应用程序中使用DT有一段时间了。我想知道是否有任何选项(简单的方法)当文本很长时更改表格标题方向(例如将所有列名旋转45度或其他),这是一个问题,当你在一个表中有很多列时。谢谢,这里有一个简短的例子:
library(shiny)
library(DT)
ui <- fluidPage(
mainPanel(
tabsetPanel(
tabPanel("Table", br(),
dataTableOutput("myTable"))
), width = 9
)
)
server <- function(input, output) {
output$myTable <- renderDataTable({
test <- data.frame(1:20, letters[1:20], stringsAsFactors = FALSE)
colnames(test) <- c("This is a long name", "This column name is much more longer!")
datatable(test, rownames = FALSE, options = list(autoWidth = TRUE, searching = TRUE, lengthMenu = list(c(5, 10, 25, 50, -1), c('5', '10', '25', '50', 'All')), pageLength = 10)) # %>% formatStyle(names(test))
})
}
shinyApp(ui, server)
字符串
2条答案
按热度按时间nom7f22z1#
这里有一种方法可以将标题旋转90度。
字符串
的数据
mmvthczy2#
我有和OP一样的问题,但不想使用接受的答案,因为我想在我的用例中尽可能减少代码(我不明白它是如何工作的!)使用Stéphane Laurent的答案加上来自here和here的一些信息,我可以使用这个方法从第2列开始旋转我的标题:
字符串
gt(0)
将css应用于所有大于0的列,所以不是第一列,请参阅here。CSS也可以打包在一个源代码.css文件中,你可以用
.addClass('your-new'class')
替换.css(...)
,这使得它更整洁。我不确定我的方法是否能做到Stephane的方法所能做到的一切,但它对我很有效,我认为它涵盖了最初的Q。