Питер, Я также разочарование в связи с нечетным поведением xtable
при воссоздании таблицы, которые используются для работы и раньше, но не в новом R Markdow v2
с использованием pandoc
для преобразования в html.
Самое большее, что я мог сделать с вашей таблицей, заключалось в том, чтобы сделать ее рендерингом довольно, но не локальное выравнивание столбцов или поворот заголовка столбца. Для этого поместите весь код в один фрагмент r с опцией results='asis'
.
Это работало для меня с использованием RStudio 0.98.1103, R версии 3.1.3 (2015-03-09), платформа: x86_64-pc-linux-gnu (64-разрядная версия), работающая под: Ubuntu exact (12.04. 5 LTS), knitr_1.9, rmarkdown_0.5.1 и xtable_1.7-4:
Поскольку вы упоминаете использование knit2html (не доступно для R 3.1.3), попробуйте мой код в вашей установке и посмотрите, работает ли он еще , Если это так, возможно, причина не в том, чтобы получать последние версии.
Использование заголовков Knitr's Kable
Заголовки согласуются с выравниванием по умолчанию для выравнивания по правому краю для числовых столбцов и в противном случае с левым выравниванием. Заголовки Xtable всегда центрируются, и я не могу найти вариант для изменения этого поведения.
---
output:
html_document:
self_contained: false
theme: flatly
keep_md: true
---
<style type="text/css">
table { max-width: 200%;
border: 1px solid #ccc; }
th { background-color: #000000;
color: #ffffff;
width: 2.5cm; }
td { background-color: #dcdcdc }
</style>
```{r, echo=FALSE, results = 'asis'}
library(xtable)
data(tli)
tli.table <- xtable(tli[1:10,])
align(tli.table) <- "|r|r|lp{3cm}l|r|"
print(tli.table,
rotate.rownames=F,
rotate.colnames=F,
type="html",
include.rownames = F)
```
```{r via kable, echo=FALSE, results='markup'}
require(knitr)
kable(tli.table, format = "html",
padding = 0,
row.names=F,
caption = "Via kable")
```
Спасибо, @ Грегор, это намного лучше –