在R的knitr文档中插入HTML表

Phi*_*hil 1 xml r knitr

我有许多不同的HTML文件,这些文件包含要在R的knitr报表中合并的格式化表格。不幸的是,在将HTML文件加载到R并将knitr报表中的表格包括在内时,我遇到了一些问题。

HTML文件是使用MS Excel和stargazer库中的“另存为htm”功能创建的。它们可以在任何浏览器中完美显示。我的代码是:

```{r, echo=FALSE, return='asis'}
library(XML)
overview.html <- htmlParse("overview.htm")
print(overview.html)
```
Run Code Online (Sandbox Code Playgroud)

在控制台中打印“概述html”时,我得到了正确的html代码。但是,在编织报表时,输出文档不包含我的代码,并且出现以下错误:

Warning message:
XML content does not seem to be XML: 'overview.htm' 
Run Code Online (Sandbox Code Playgroud)

我已经尝试了上述几种变体(使用htmlTreeParse,使用打印类型=“ html”选项等)无济于事。如果有人可以提出一种可行的方法,那将是很棒的。

hrb*_*str 5

如果您想保留格式(并且不打扰XML / HTML搅动),则可以使用<iframe>来将完整的HTML文档嵌入到knitr文档中,如下所示:

```{r echo=FALSE, results='asis'}
tmp <- URLencode(paste(readLines("/path/to/table.htm"), collapse="\n"))

cat('<iframe src="data:text/html;charset=utf-8,', tmp ,
    '" style="border: none; seamless:seamless; width: 800px; height: 200px"></iframe>')
```
Run Code Online (Sandbox Code Playgroud)

它不会显示在RStudio查看器中,但显示在实际的浏览器中:

在此处输入图片说明

您需要进行调整,width并且heightheight对于这个示例,我可以/应该做得更少),但是您将通过这种方式在编织文档中拥有完全格式化/样式化的表格。

注意:这仅适用于编织为HTML。