如何在R包的html_vignette中实现DataFrame分页显示?
解决html_vignette中df_print:paged不生效的问题
你遇到的问题是因为html_vignette为了生成轻量化的vignette文档,默认使用knitr::kable来渲染数据框,这一默认配置会覆盖你在output里设置的df_print: paged。可以通过以下两种方法解决:
方法一:在YAML配置中强制指定knitr选项
直接在html_vignette的output设置里添加knitr的chunk选项,明确设置df_print为paged:
--- title: "Helpfile" output: rmarkdown::html_vignette: df_print: paged knitr: opts_chunk: df_print: paged vignette: > %\VignetteIndexEntry{Helpfile} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r setup} iris
## 方法二:在代码块中设置全局knitr选项 在你的setup代码块里,显式设置knitr的全局chunk选项,覆盖默认的df_print行为: ```yaml --- title: "Helpfile" output: rmarkdown::html_vignette: df_print: paged vignette: > %\VignetteIndexEntry{Helpfile} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r setup, include=FALSE} knitr::opts_chunk$set(df_print = "paged")
iris
另外,先确认你的`rmarkdown`包是最新版本(至少>=2.10),旧版本可能不支持在`html_vignette`中使用分页数据框功能。可以用以下命令检查版本: ```r packageVersion("rmarkdown")
如果版本过低,运行install.packages("rmarkdown")更新即可。
内容的提问来源于stack exchange,提问作者Kiek
相关产品推荐
相关产品推荐

