14

knitr 的优点之一是您可以轻松更改 R 代码的颜色。但是,大多数文档都是黑白打印的。那么在使用黑白打印机打印文档时,R 代码的样式设置会是一个很好的设置吗?

4

3 回答 3

7

正如其他评论者所提到的,你真的只能选择改变一些灰色阴影,加上粗体和斜体。这是一个样式表,按最显眼到最不显眼的项目的松散顺序排列。您的偏好可能会有所不同。

.background {
  color: #ffffff;
}
.source, .output, .warning, .error, .message {
  padding: 0em 1em;
  border: solid 1px #f7f7f7;
}
.error, .warning, .message {
  font-weight: bolder;
  font-style: italic;
  color: #000000;
}
.keyword {
  font-weight: bolder;
  color: #000000;
}
.functioncall, .package {
  font-weight: bolder;
  color: #202020;
}
.source, .output, .number, .argument, .formalargs, .eqformalargs, .assignement, .symbol, .prompt {
  color: #404040;
}
.string {
  font-weight: bold;
  color: #606060;
}
.comment, .roxygencomment, .slot {
  font-style: italic;
  color: #808080;
}

使其可用的最简单方法是在 knitr 包所在的任何库中另存为“knitr/themes/bw.css”。然后您可以通过调用来使用它

knit_theme$set("bw")

(或者,对于少量的额外输入,您可以提供knit_themeCSS 文件的路径。)

于 2012-07-18T13:49:46.570 回答
3

knitr 中现在有灰度主题greyscale0greyscale1greyscale2. 您可以通过以下方式查看所有 knitr 主题:

library("knitr")
knit_theme$get()

要在 knitr 文档中设置主题,请添加(例如)行

knit_theme$set("greyscale2")
于 2014-06-20T10:59:21.373 回答
0

坦率地说,我没有出售任何用于黑白印刷的针织主题,它们都不如旧款enscript -E<lang>

以下是我认为对黑白打印输出的易读性很重要的标准,斜体和粗体以及着色:

#Comments should be italicized - very important
fn.name.declarations.should.be.heavily.bolded <- function(...) {
"strings should be bolded"
numbers, NA, Nan should be a different color (prints as something dark gray)
Your choice of how to treat variable names
Your choice of how to treat fncalls, builtins

您没有说它特别需要是LaTex,那为什么不考虑输出PS或PDF格式呢?

于 2012-07-15T20:07:10.013 回答