一直在尝试更改DT生成的表格中所有文本的字体大小。但是,我只能弄清楚如何使用formatStyle(names(datCalc), fontSize = '12px')更改记录的大小。列标题和按钮的文本大小相同。在RStudio中使用R Markdown。
formatStyle(names(datCalc), fontSize = '12px')
ddarikpa1#
我觉得你差不多到了。我通过明确告诉DT::formatStyle()我需要哪些列来解决这个问题。我首先尝试使用names()或colnames()方法,就像您所做的那样。但由于某种原因,它没有工作:
DT::formatStyle()
names()
colnames()
iris %>% DT::datatable() %>% DT::formatStyle(columns = colnames(.), fontSize = '50%')
然而,我们知道iris数据集有5列,所以我只是这样做:
iris
iris %>% DT::datatable() %>% DT::formatStyle(columns = c(1, 2, 3, 4, 5), fontSize = '50%')
在本例中,我使用font-size = 50%,但您也可以像以前那样指定font-size = 12pt。您还可以为columns参数提供像c(T, F, F, F, T)这样的逻辑向量,格式将应用于您声明了TRUE的那些列。
font-size = 50%
font-size = 12pt
columns
c(T, F, F, F, T)
TRUE
2o7dmzc52#
通过JavaScript表头调用添加CSS似乎可以做到这一点(即“this.API().table().header()”)。
datatable(..., options=list( initComplete = JS( "function(settings, json) {", "$(this.api().table().header()).css({'font-size': '50%'});", "}"))) )
引用:第4.3节@https://rstudio.github.io/DT/options.html
nzk0hqpo3#
能够通过使用formatStyle更改JS表格和列内容字体大小的CSS来更改页眉和页脚,如下所示。但是,页眉和页脚的字体大小保持不变。我想改变页眉/页脚/正文(整个字体的表)一举。这可能吗?
formatStyle
datatable(head(iris, 20), options = list( initComplete = JS( "function(settings, json) {", "$(this.api().table().header()).css({'font-size': '5px', 'background-color': '#c2d1f0', 'color': '#fff'});", "}"))) %>% formatStyle(columns = colnames(.$x$data), `font-size` = '12px')
尝试使用以下命令更新列的CSS,但未成功
"$(this.api().columns().data()).css({'font-size': '5px'});" "$(this.api().table().footer()).css({'font-size': '10px});" "$(this.api().tables().body()).css({'font-size': '10px'});"
332nm8kg4#
基于Antex和sabeepa给出的答案。如果您想更改所有内容的字体大小,包括表本身之外的DT组件,请使用table().container()。因此,代码看起来像这样:
table().container()
font.size <- "10pt" df %>% DT::datatable( options=list( initComplete = htmlwidgets::JS( "function(settings, json) {", paste0("$(this.api().table().container()).css({'font-size': '", font.size, "'});"), "}") ) )
4条答案
按热度按时间ddarikpa1#
我觉得你差不多到了。我通过明确告诉
DT::formatStyle()
我需要哪些列来解决这个问题。我首先尝试使用names()
或colnames()
方法,就像您所做的那样。但由于某种原因,它没有工作:然而,我们知道
iris
数据集有5列,所以我只是这样做:在本例中,我使用
font-size = 50%
,但您也可以像以前那样指定font-size = 12pt
。您还可以为columns
参数提供像c(T, F, F, F, T)
这样的逻辑向量,格式将应用于您声明了TRUE
的那些列。2o7dmzc52#
通过JavaScript表头调用添加CSS似乎可以做到这一点(即“this.API().table().header()”)。
引用:第4.3节@https://rstudio.github.io/DT/options.html
nzk0hqpo3#
能够通过使用
formatStyle
更改JS表格和列内容字体大小的CSS来更改页眉和页脚,如下所示。但是,页眉和页脚的字体大小保持不变。我想改变页眉/页脚/正文(整个字体的表)一举。这可能吗?尝试使用以下命令更新列的CSS,但未成功
332nm8kg4#
基于Antex和sabeepa给出的答案。如果您想更改所有内容的字体大小,包括表本身之外的DT组件,请使用
table().container()
。因此,代码看起来像这样: