2013-11-20 24 views
5

Làm cách nào tôi có thể đặt độ rộng cột của các cột riêng lẻ trong đầu ra knitr (Rmd) của đoạn mã bằng gói xtable?xtable + knitr đặt chiều rộng cột html

MWe

```{r setup, include=FALSE} 
library(xtable) 
``` 

```{r, results="asis", echo=FALSE} 
print(xtable(mtcars[1:2, 1:2]), type="html", include.rownames=FALSE) 
``` 

phép nói rằng tôi muốn làm cho column_ # 1-2 inches rộng và column_ # 2-3 inch.

Tôi chưa kết hôn với xtable ở đây nhưng không biết bất kỳ gói html nào khác có thể thực hiện việc này.

Trả lời

1

Bạn có thể thay đổi css được xtable sử dụng để định dạng bảng và thay đổi chiều rộng cột. Nó không cho phép thay đổi các cột riêng lẻ.

Xem http://nsaunders.wordpress.com/2012/08/27/custom-css-for-html-generated-using-rstudio/

Một ví dụ dưới đây:

Thêm một stylesheet (ở đây đặt tên custom.css) vào cùng thư mục với file markdown của bạn.

table { 
    max-width: 95%; 
    border: 1px solid #ccc; 
} 

th { 
    background-color: #000000; 
    color: #ffffff; 
    width: 100px; 
} 

td { 
    background-color: #dcdcdc; 
    width: 100px; 
} 

và thiết lập các tùy chọn để sử dụng kiểu này

```{r setup, include=FALSE} 
library(xtable) 
options(rstudio.markdownToHTML = 
     function(inputFile, outputFile) {  
     require(markdown) 
     markdownToHTML(inputFile, outputFile, stylesheet='custom.css') 
     } 
) 

``` 

```{r, results="asis", echo=FALSE} 
print(xtable(mtcars[1:2, 1:2]), type="html", include.rownames=FALSE) 
``` 

Nó có thể là có thể hack chức năng print.xtable để có được linh hoạt hơn.

Các vấn đề liên quan