如何调整.Rmd代码块的输出样式?移除边框及## [1]前缀
解决Rmd代码块输出的两个问题:去掉
## [1]前缀和输出边框 一、去掉输出内容前的## [1]前缀
有两种常用方法,按需选择:
- 方法1:替换
print()为cat()print()会生成带R控制台样式的输出前缀,改用cat()直接输出纯文本,同时手动添加换行符保证格式:
for (i in 1:5) { cat(i, "\n") }
- 方法2:通过knitr选项全局或局部取消前缀
如果不想修改代码逻辑,可以设置knitr的comment参数为NA:- 全局生效(整个文档所有代码块输出都去掉前缀):在文档开头的setup代码块添加:
knitr::opts_chunk$set(comment = NA)- 单个代码块生效:直接在目标代码块的选项里加
comment=NA:
for (i in 1:5) { print(i) }
二、去掉输出块的边框
根据你最终的输出格式(HTML/PDF),操作略有不同:
- HTML输出:添加自定义CSS覆盖默认样式
在Rmd文档中插入一个CSS代码块,隐藏输出块的边框:
/* 隐藏knitr输出块的边框 */ div.output pre { border: 0; }
- PDF输出:修改LaTeX样式
在Rmd文档开头添加LaTeX命令,取消输出块的阴影和边框:
\renewenvironment{Shaded}{}{} \renewenvironment{Highlighting}{\begin{verbatim}}{\end{verbatim}}
内容的提问来源于stack exchange,提问作者Kyle Dixon
相关产品推荐
相关产品推荐

