R formattable没有滚动条

No scrollbar for R formattable

我有一个大型数据框,我将其呈现为 formattable 对象。当对象在 R Studio 查看器中呈现时,我有一个滚动条可以上下移动。但是当我导出图像时,它不会导出整个 table,只是其中的一部分。如何将整个 table 导出为图像?

这是我的格式代码table对象:

formattable(por.pais,align =c("c","c","c","c"),
        list('Equipo' = formatter("span", style = ~ style(color = "grey",font.weight ="bold")), 'Eficiencia'= color_tile(customRed, customGreen)))

下面是 R 导出图像的方式: formattable object

是的,在查看器中,导出,您可以获得最大 1820 像素宽和 796 像素高。如果您增加像素并单击更新预览,这将有助于此尺寸内的中等尺寸 table,但如果您的 table 更大(如我的)则无济于事。

好的,所以我找到了这段代码并且它完美地工作:

首先,安装 formattable、htmltools 和 webshot 包:

install.packages("htmltools")
install.packages("webshot")
install.packages("formattable")

现在加载它们:

#Load the following libraries:
library("htmltools")
library("webshot")    

运行以下函数:

export_formattable <- function(f, file, width = "100%", height = NULL, 
                               background = "white", delay = 0.2)
{
  w <- as.htmlwidget(f, width = width, height = height)
  path <- html_print(w, background = background, viewer = NULL)
  url <- paste0("file:///", gsub("\\", "/", normalizePath(path)))
  webshot(url,
          file = file,
          selector = ".formattable_widget",
          delay = delay)
}

现在,创建格式table对象:

tb <- formattable(dataframe)

最后,将您的 table 保存为图片:

export_formattable(tb,"my_table.png")

注意:您也可以使用 .jpg 扩展名。