25

这可能很容易,但我似乎无法在文档中找到它。我不想将生成的图像嵌入 HTML 文件本身。

所以基本上我希望 knit2html() 生成一个带有单独图像文件的 HTML 文件(然后链接到/显示在 HTML 中)。基本行为是脚本将图像嵌入为 base64 字符串。这样做的问题是在 IE 中,大图像不会显示(即似乎丢失了)。知道如何将图像与 HTML 输出分开吗?

我的示例 .Rmd 文件('knit.Rmd'):

```{r}
plot(3)
```

我的 .R 文件由此生成 HTML:

library(knitr)

knit2html('knit.Rmd')

此示例生成一个 HTML,其中该图作为嵌入的 base64 字符串。

4

4 回答 4

19

如果您查看knit2html 帮助页面,您会看到:

This is a convenience function to knit the input markdown source and
call ‘markdownToHTML()’ in the ‘markdown’ package to convert the
result to HTML.

然后您查看markdownToHTML帮助页面并阅读以下参数:

 options: options that are passed to the renderer.  see
           ‘markdownHTMLOptions’.

因此,您查看markdownHTMLOptions(仍然没有丢失?)并查看以下选项:

 ‘'base64_images'’ Any local images linked with the ‘'<img>'’ tag
      to the output HTML will automatically be converted to base64
      and included along with output.

使用以下命令,您应该会看到系统上的默认选项:

R> markdownHTMLOptions(default=TRUE)
[1] "use_xhtml"      "smartypants"    "base64_images"  "mathjax"       
[5] "highlight_code"

因此,您可能可以尝试使用以下方式编织您的降价文件:

knit2html("knit.Rmd", options=c("use_xhtml","smartypants","mathjax","highlight_code"))

虽然没有测试...

于 2013-02-14T08:57:17.560 回答
17

您可以self_contained: no在 .Rmd 标头中添加输出选项。例如:

---
title: "Data visualisation with ggplot"
output:
  html_document:
    self_contained: no
    toc: yes
    toc_float: yes
---
于 2017-08-11T08:27:52.910 回答
10

它不是knitr这样做的,只是在运行块knitr后生成一个修改后的降价文件。R因此,您需要查看markdown软件包的帮助以弄清楚...

它的base64_images选择。咖啡还没有开始,所以我还没有完全弄清楚如何设置/重置单个降价选项,但将它们全部清除对我来说很有效:

 > knit2html("foo.Rmd",options="")

生产

 <p><img src="figure/unnamed-chunk-1.png" alt="plot of chunk unnamed-chunk-1"> </p>

foo.html.

如果清除所有这些选项会破坏其他内容,请继续阅读markdownHTMLOptions

于 2013-02-14T08:56:39.587 回答
6

这是一种将图形放在单独的 html 文件中的简单方法,这将显着减小其大小。

在 *.rmd 文件的开头添加这个块:

```{r global_options, include=FALSE}
#suppress the warnings and other messages from showing in the knitted file.
knitr::opts_chunk$set(fig.width=8, fig.height=6, fig.path='Figs/',
                      echo=TRUE, warning=FALSE, message=FALSE)
```

选项 'fig.path' 告诉 R 将图片保存到 'Figs' 文件夹中。该任务不需要其余选项。

单击此按钮:

单击此按钮

确保未选中该复选框:

确保未选中复选框

于 2015-08-14T23:31:11.237 回答