2016-04-07 45 views
1

rmarkdownとknitrを使ってPDF文書を作成しています。以下はコードチャンクの例です。 PDFに編み込むとき、スケールボックスの値がPDFに印刷されますが、これは嫌です。私の実際のテーブルははるかに広いので、scalebox引数を使用する必要があります。R Markdown - longtableとscaleboxの出力を持つxtable

```{r, results = 'asis', echo = FALSE, message = FALSE, warning=FALSE} 

    x <- matrix(rnorm(1000), ncol = 10) 
    x.big <- xtable(x) 

    print.xtable(x.big, hline.after=c(-1), tabular.environment = "longtable", scalebox = 0.7) 

    ``` 

Image of scalebox text output

longtable表形式の環境を使用する場合にのみ発生します。標準の表環境で同じコードチャンクを実行しても、スケールボックス情報は出力されません。私は、print.xtable関数のすべてのコメント引数とFコードにチャンクを設定しようとしましたが、運がありません。

スケールボックステキストを印刷しないでPDFファイルを出力するにはどうすればよいですか?

+0

FWIWあなたがtex出力を残してrmdドキュメントを手で編むと、rmd-> mdステップはOKですが、md-> texはlatexコマンドをエスケープします。だから私はそれがパンデックの問題だと思う。簡単な回避策がない場合は、代わりにRnwソースファイルを使って作業することができます。 – baptiste

+0

答えはありますか? – user3022875

+0

@ user3022875私は答えとして回避策を投稿しましたが、PDF出力からスケールボックステキストを削除するという特定の問題を実際には修正していないので、答えとしてマークしません。 – TBT8

答えて

0

スケールボックスの問題を回避する方法が見つかりませんでした。私がやったことは、代わりにprint.xtableのsize引数を使用していたことです。以下は、sizeがフォントの望ましいサイズを表す整数であるサンプル関数です。

outputXtableTest <- function(df, size){ 

    sizeNew = paste0("\\fontsize{", size,"pt}{", size+1, "pt}\\selectfont") 

    print.xtable(
      df, hline.after=c(-1,0, 1:nrow(table)), 
      tabular.environment = 'longtable', 
      floating = FALSE, size = sizeNew 
      ) 
} 

詳細については、postを参照してください。

関連する問題