コードチャンクにresize.height=0.5,resize.width=0.5
を含めましたが、stargazerによって生成されたテーブルのサイズを変更できません。誰か教えてもらえますか?
私のコードチャンクオプションは次のようになります:echo=FALSE,warning=FALSE,results='asis',resize.height=0.5,resize.width=0.5}
スターゲイザーコードは次のようなものです。
stargazer(did.student,student.control.kmt,student.control.neu,student.control.dpp,header = FALSE,
title="DD Model",
covariate.labels = c("Treatment","group","Treatment*group"),
dep.var.labels = "attitude",
column.labels = c("","party1","Independent","party2"),
label = "DiD-students")
助けていただければ幸いです!
-言及するのを忘れました-私はテーブルでビーマーを使用しています。
私は自分で問題を解決します。
Stargazerでテーブルサイズを調整するには、フォントサイズを_font.size=
_に変更し、Stargazerを単一行に_single.row = TRUE
_にし、stargazer()
の列間のスペースを_column.sep.width = "1pt"
_に変更します。
ここのリンク はprint(stargazer(),scalebox='0.7')
の使用を提案していますが、おそらくBeamerでMarkdownを使用しているため、機能しませんが、よくわかりません。これについてもっと貢献したいと思います。
もっと簡単な答えを期待していましたが、これでうまくいきます!
GitHubに関するこのコメント _\resizebox{}
_をstargazer()
に実装するように促しました。 resizebox.stargazer()
を使用して、stargazer()
から出力されるテーブルのサイズを_tab.width
_および/または_tab.height
_引数で指定できます。この機能を有効にするには、最初に次のコードを実行する必要があります。
_resizebox.stargazer = function(..., tab.width = "!", tab.height = "!"
){
#Activate str_which() function:
require(stringr)
#Extract the code returned from stargazer()
res = capture.output(
stargazer::stargazer(...)
)
#Render the arguments:
tab.width = tab.width
tab.height = tab.height
#Attach "}" between \end{tabular} and \end{table}
res =
prepend(res, "}", before = length(res))
#Input \resizebox before \begin{tabular}
res =
c(res[1:str_which(res, "^\\\\begin\\{tabular\\}.*")-1],
paste0("\\resizebox{",tab.width,"}{",tab.height,"}{%"),
res[str_which(res, "^\\\\begin\\{tabular\\}.*"):length(res)]
)
#Produce the whole strings
cat(res, sep = "\n")
}
_
テーブルサイズは、たとえば次のように指定できます。 resizebox.stargazer(..., tab.width = "0.7\\textwidth")
。 TeXコマンドは_\\
_ではなく_\
_から作成する必要があることに注意してください。
これは、出力をLaTeXファイルに書き込むCarlosのソリューションの代替手段です。
mkTexTable <- function(..., file){
tbl <- capture.output({
stargazer(...)
})
tbl <- gsub("\\begin{tabular}", "\\resizebox{\\textwidth}{!}{\\begin{tabular}", tbl, fixed = T)
tbl <- gsub("\\end{tabular}", "\\end{tabular}}", tbl, fixed = T)
fileConn <- file(file)
writeLines(tbl, fileConn)
close(fileConn)
}
mkTexTable(lm1, lm2, "texOutput.tex")
この投稿はまたいくつかの助けを提供しました: https://stackoverflow.com/a/36018251/2289444