我找到了这篇很棒的教程,介绍了如何修改在 Rstudio 中使用 markdown 和 knitr 创建的 HTML 报告的 css 格式。帖子可以在这里找到。
我希望以此概念为基础,并通过使用相同的 css 来模仿此处的页面布局。我试图简单地复制/粘贴/组合我在查看页面源时找到的两个 css 文件。
您可以提供的任何帮助将不胜感激!这是我第一次尝试做任何 CSS。
这是 RStudio 提供的方法:http ://www.rstudio.com/ide/docs/authoring/markdown_custom_rendering
options(rstudio.markdownToHTML =
function(inputFile, outputFile) {
require(markdown)
markdownToHTML(inputFile, outputFile, stylesheet='custom.css')
}
)
我从来没有能够让它正常工作,所以我做的有点不同:
我通过创建标准输出文件来做到这一点,然后将标题和 css 代码放在 R 的顶部:
tmp <- readLines("your.html")
tmp <- tmp[-c(1:50)] # or however many lines it is before the css ends
write(tmp,"your.html")
然后我使用 pandoc 在独立文件中添加我自己的 css
system("pandoc -s -S your.html -c your.css -o output.html")
在 RStudio 之外(也可以在其中工作 - 我不确定,因为我不经常使用它),您可以使用选项“markdown.HTML.stylesheet”来设置自定义样式表。然后它会将您的 .css 文件中的所有内容导入到新创建的 html 文件中。
这是一个例子:
## Set file names
htmlName <- "test.html"
rmdName <- gsub("html","Rmd", htmlName)
stylesheetName <- 'style.css'
## Generate rmd file from R
sink(file = rmdName, type='output')
cat('\n<textarea maxlength="3000" cols="70">')
cat("Hello World!")
cat('</textarea>\n')
sink()
## Generate style sheet from R
sink(file = stylesheetName, type='output')
cat("textarea {color: #a10000; }\n")
sink()
## Set knitr options and knit html
require(knitr)
options(markdown.HTML.stylesheet = stylesheetName)
knit2html(rmdName, output = htmlName)