web-dev-qa-db-ja.com

RMarkdownドキュメントのkable()で作成されたテーブルの幅の調整

Knitrでkable()関数を使用してテーブルを作成するときに列の幅を調整することは可能ですか?

2列のテーブルに対するこのようなチャンクは、ドキュメントの幅全体を占めるテーブルを生成します。列を狭くしたいと思います。 これはkable()で実行できますか、または別のパッケージが必要ですか?

このrmarkdownチャンク

_```{r}
df <- data.frame(x = 1:10,
           y = 11:20)
library(knitr)
kable(df)
```
_

このテーブルを作成します enter image description here

左にkable(df, align = "l")で揃えると少し助けになりますが、2つの列が互いに隣接するようにしたいと思います。

19
N Brouwer

kableExtraパッケージを試すことができます。

kable(x, "html") %>%
  kable_styling(full_width = F)
19
Hao

私の新しいお気に入りはflextableパッケージです。1)テーブルが美しい、2)幅やフォントサイズなどをより簡単に制御できる、3)HTMLに適切にレンダリングできるandWord。データの使用:

_```{r}
library(flextable)
library(magrittr)
df <- data.frame(x = 1:10, y = 11:20)
df %>% regulartable() %>% autofit() %>% 
width(j=~x,width=1) %>% width(j=~y,width=1)
```
_

widthの両方の値を1に設定すると、列は互いに近くなります。

flextable-1

最後の行をwidth(j=~x,width=2) %>% width(j=~y,width=2)に調整すると、テーブルは次のようになります。

flextable-2

4
mysteRious