2016-12-15 8 views
3

通常、ビューアやブラウザでhtmlテーブルを表示する機能を調整する方法を探しています。これは、呼び出されたときにrnotebooksのようなknitrドキュメントにhtmlを自動的に挿入する方法です。ネイティブの印刷方法を追加する

具体的には、パッケージの機能を変更するにはsjPlotが動作します。現時点では、彼らは手動で挿入する必要があり、その後、ビューアでHTMLテーブルを生成$knitr属性を持つオブジェクトを返す:

`r sjt.frq(efc$e42dep, no.output=TRUE)$knitr` 

これらの機能の一つは、sjt.frqです。これを行う方法はありますか? knit_printから

答えて

3

library(knitr) 
a = 42 
class(a) = "my_class" 
knit_print.my_class = function(x,...){ 
    res = paste("{{", x,"}}") 
    asis_output(res) 
} 
a 

それは私が文書を編む時に動作しますが、RNotebooksでは動作しませんし、sjt.frqでは動作しません。しかしRNotebookは、次のステートメントに動作して:あなたは、文字出力」で、 `$

library(sjPlot) 
library(sjmisc) 
library(knitr) 

data(efc) 
asis_output(sjt.frq(efc$e42dep, no.output=TRUE)$knitr) 
+0

私の経験では、それが文字出力を取得し、asis_output''でそれをラップするのが最善ですだけでなく – Benjamin

+0

@Benjaminてきましたがoutput.complete'意味しますか"? –

+0

私はオブジェクトに精通していません。 HTMLコードの文字列が必要です。文字列を 'asis_output'に置くことは、同じ文字列を' cat'にチャンクオプション 'output = 'asis''を置くのと同じです – Benjamin