column_spec function in kableExtra in R doesn't work

眉间皱痕 提交于 2020-01-15 10:16:29

问题


I want co change column width in pdf with kable ( , 'latex') but the fucntion doesn't work. Anybody know why? here is my code:

   table = knitr::kable(jeden, "latex" , row.names = F ,  align = "llrrrrrrrrrr" , escape = F, booktabs = F, caption = '1. Sprzedaz uslug i towarow razem') 
   kableExtra::column_spec(table, 1, width = "1cm", bold = TRUE, italic = TRUE)

回答1:


It's not a bug but rather a relatively strange setting for align in knitr::kable(). In xtable you can put align in a string but for kable, you will have to provide a vector. In your case, if you put things like align = c(rep("l", 2), rep("r"), 2), you should be fine.




回答2:


It seems that align breaks your column_spec, but only for LaTeX/PDF output.

Here are two minimal & reproducible examples.

PDF output

---
title: "Untitled"
output:
  pdf_document: default
---

```{r}
library(knitr)
library(kableExtra)
x <- kable(head(mtcars[, 1:4]), "latex", row.names = F, align = "llrr")
column_spec(x, 1:2, width = "4cm", bold = TRUE, italic = TRUE)
```

If you remove align from the PDF RMarkdown document, column_spec works as expected.

HTML output

---
title: "Untitled"
output:
  html_document: default
---

```{r}
library(knitr)
library(kableExtra)
x <- kable(head(mtcars[, 1:4]), "html", row.names = F, align = "llrr")
column_spec(x, 1:2, width = "4cm", bold = TRUE, italic = TRUE)
```

This seems like a bug to me, and I would suggest opening an issue on the kableExtra GitHub site. If you do, you should reference this post, and include a minimal & reproducible example (similar to what I did).



来源:https://stackoverflow.com/questions/51611770/column-spec-function-in-kableextra-in-r-doesnt-work

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!