R 中保存到 HTML 时 DT 白色 space
DT white space when saving to HTML in R
我正在使用 DT
构建一个 HTML table 我一直有这个巨大的白色 space 并且似乎无法理清如何获得加强页面的列。另外要注意的是,在设置 scrollX = TRUE
.
时,我的左列修复似乎没有修复
这是一个例子:
library(tidyverse)
library(DT)
iris %>%
group_by(Species) %>%
mutate(across(.cols = c(2:4),
list(avg = mean, SD = sd))) %>%
relocate(Species, before = "Sepal.Length") %>%
datatable(filter = 'top',
options = list(pageLength = 100,
autoWidth = TRUE,
scrollY = "800px",
scrollX= TRUE,
fixedColumns = list(leftColumns = 0)))
原因不是因为数据table本身,而是因为 RStudio 保存文件的方式。
您可以阅读有关 sizingPolicy 的信息,RStudio 在此处解释它:https://github.com/rstudio/rstudio/blob/master/src/cpp/session/modules/NotebookHtmlWidgets.R
我发现解决此问题的最佳方法是将 table 设置为一个对象并更改该对象。我无法通过数据table的结构找到我要找的东西。
这个方法对我有用:
# Your code, but assigned to d
library(tidyverse)
library(DT)
d <- iris %>%
group_by(Species) %>%
mutate(across(.cols = c(2:4),
list(avg = mean, SD = sd))) %>%
relocate(Species, before = "Sepal.Length") %>%
datatable(filter = 'top',
elementId = "dt",
options = list(pageLength = 100,
autoWidth = TRUE,
scrollY = "800px",
scrollX= TRUE,
fixedColumns = list(leftColumns = 0)))
这会将 table 设置为与您的浏览器 window 一样宽,并在您更改浏览器 window 大小时动态调整。
d$sizingPolicy$browser$defaultWidth = "100%"
我正在使用 DT
构建一个 HTML table 我一直有这个巨大的白色 space 并且似乎无法理清如何获得加强页面的列。另外要注意的是,在设置 scrollX = TRUE
.
这是一个例子:
library(tidyverse)
library(DT)
iris %>%
group_by(Species) %>%
mutate(across(.cols = c(2:4),
list(avg = mean, SD = sd))) %>%
relocate(Species, before = "Sepal.Length") %>%
datatable(filter = 'top',
options = list(pageLength = 100,
autoWidth = TRUE,
scrollY = "800px",
scrollX= TRUE,
fixedColumns = list(leftColumns = 0)))
原因不是因为数据table本身,而是因为 RStudio 保存文件的方式。
您可以阅读有关 sizingPolicy 的信息,RStudio 在此处解释它:https://github.com/rstudio/rstudio/blob/master/src/cpp/session/modules/NotebookHtmlWidgets.R
我发现解决此问题的最佳方法是将 table 设置为一个对象并更改该对象。我无法通过数据table的结构找到我要找的东西。
这个方法对我有用:
# Your code, but assigned to d
library(tidyverse)
library(DT)
d <- iris %>%
group_by(Species) %>%
mutate(across(.cols = c(2:4),
list(avg = mean, SD = sd))) %>%
relocate(Species, before = "Sepal.Length") %>%
datatable(filter = 'top',
elementId = "dt",
options = list(pageLength = 100,
autoWidth = TRUE,
scrollY = "800px",
scrollX= TRUE,
fixedColumns = list(leftColumns = 0)))
这会将 table 设置为与您的浏览器 window 一样宽,并在您更改浏览器 window 大小时动态调整。
d$sizingPolicy$browser$defaultWidth = "100%"