web-dev-qa-db-ja.com

knitr:出力でのテキストの折り返しを防ぐ方法は?

HTMLに編むときにknitrのコード出力チャンクでのテキストのラッピングに問題があります。

たとえば、次を実行した場合:

matrix(rnorm(60, 5, 2), ncol = 12)

HTMLの出力はテーブルをラップし、12番目の列が残りの下に移動する次のような出力を提供します。

##       [,1]   [,2]  [,3]  [,4]  [,5]  [,6]  [,7]  [,8]  [,9] [,10] [,11]
## [1,] 3.407 0.8035 2.981 5.269 6.989 5.107 7.143 3.127 3.624 7.220 4.805
## [2,] 3.907 5.5971 5.488 4.995 6.496 5.980 1.576 3.009 6.605 3.440 2.754
## [3,] 1.945 3.7668 4.860 2.945 3.663 5.945 7.168 2.012 5.873 8.190 7.441
## [4,] 4.893 6.2054 4.403 3.967 2.880 7.196 1.813 3.283 5.216 5.699 2.829
## [5,] 5.706 0.9084 5.802 1.404 3.122 1.866 6.613 3.299 4.990 3.645 3.766
##       [,12]
## [1,] 0.3951
## [2,] 4.0866
## [3,] 5.9293
## [4,] 6.4729
## [5,] 2.7172

出力チャンクの幅を調整する方法はありますか。そうすれば、行がすべて1行に表示されるテーブルを作成できます。

##       [,1]   [,2]  [,3]  [,4]  [,5]  [,6]  [,7]  [,8]  [,9] [,10] [,11] [,12]
## [1,] 3.407 0.8035 2.981 5.269 6.989 5.107 7.143 3.127 3.624 7.220 4.805 0.3951
## [2,] 3.907 5.5971 5.488 4.995 6.496 5.980 1.576 3.009 6.605 3.440 2.754 4.0866
## [3,] 1.945 3.7668 4.860 2.945 3.663 5.945 7.168 2.012 5.873 8.190 7.441 5.9293
## [4,] 4.893 6.2054 4.403 3.967 2.880 7.196 1.813 3.283 5.216 5.699 2.829 6.4729
## [5,] 5.706 0.9084 5.802 1.404 3.122 1.866 6.613 3.299 4.990 3.645 3.766 2.7172

ありがとう!

43
susjoh

options(width=120)のようなものをドキュメントに追加すると、デフォルトの折り返し幅をオーバーライドできます。

ただし、幅が広すぎることに注意してください。 PDFまたは他の形式に変換する場合、デフォルトはほぼ適切です!

例として、RStudioのKnitrを使用し、ドキュメントをRマークダウンドキュメントとして入力します。最初のドキュメント「options」は次のようになります。

```{r set-options, echo=FALSE, cache=FALSE}
options(width=80)
opts_chunk$set(comment = "", warning = FALSE, message = FALSE, echo = TRUE, tidy = TRUE, size="small")
read_chunk("some/script/I/want/to/load.R")
```
44