Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用pander将网格添加到表中?_R_Latex_Knitr_R Markdown_Pandoc - Fatal编程技术网

如何使用pander将网格添加到表中?

如何使用pander将网格添加到表中?,r,latex,knitr,r-markdown,pandoc,R,Latex,Knitr,R Markdown,Pandoc,我正在使用R、knitr和pander,但我找不到允许我使用pander在表格上打印网格的选项。 我试过: pander(tableToPrint, style='grid') 但它没有做任何事情,无论是使用此选项还是使用“multiline”、“rmarkdown”。。。我总是得到一条横线,然后是列名,另一条横线,所有数据和一条横线。我希望在每一行之间有一条水平线。另一种选择是交替行颜色。有一种方法可以在latex中实现这一点,但在pandoc中需要一些调整。需要将此添加到latex代码中

我正在使用R、knitr和pander,但我找不到允许我使用pander在表格上打印网格的选项。 我试过:

pander(tableToPrint, style='grid') 
但它没有做任何事情,无论是使用此选项还是使用“multiline”、“rmarkdown”。。。我总是得到一条横线,然后是列名,另一条横线,所有数据和一条横线。我希望在每一行之间有一条水平线。另一种选择是交替行颜色。

有一种方法可以在latex中实现这一点,但在pandoc中需要一些调整。需要将此添加到latex代码中:

\catcode`@=11
\let \savecr \@tabularcr
\def\@tabularcr{\savecr\hline}
\catcode`@=12
但是,如果您通过header includes添加它,那么它将不起作用,可能是因为它在模板中太晚了。因此,解决方案是创建一个新模板
pandoc-D latex>template.tex
(或使用您常用的模板),并在顶部添加以前的代码,就在
\documentclass
之后。然后:

---
title: "Untitled"
output:
  pdf_document:
    keep_tex: yes
    template: "template.tex"
---
在每行生成行。因此,问题在于,最高和最低利润是双倍的

这对于docx输出是不可能的。Pandoc的docx模板只允许很少的定制,而且只允许段落样式

为了完整性起见,html解决方案更简单:

---
title: "Untitled"
output: html_document
---
<style>
th, td {
    border-bottom: 2px solid black;
}
</style>
---
标题:“无标题”
输出:html\u文档
---
th,td{
底部边框:2件纯黑;
}

pander
仅将选项传递给标记文件,但随后pandoc会将其转换为html、latex/pdf等。如果您希望在输出中具有水平线,则必须调整模板,但解决方案在很大程度上取决于您的输出格式。那么,这是什么呢?我不确定,我目前正在pdf和docx之间进行平衡。如果您有任何输出的解决方案,这将使我的选择!好的,我将切换到html:)。您指示“颜色”行的行,但在基本html输出中,我已经得到了行。