簡體   English   中英

當type =“ latex”時如何將觀星台向左對齊?

[英]how to align stargazer table to the left when type=“latex”?

我在自動rmarkdown pdf文檔中使用stargazer程序包來制作漂亮的表格。 缺省情況下,Stargazer將其表放置在頁面的中央。 如何讓觀星者生成將表格向左對齊的乳膠代碼?

這是我的意思的示例:

library(stargazer)

data_object <- structure(list(test = structure(c(1L, 1L, 2L, 2L), .Label = c("test1",  "test2"), class = "factor"), test2 = structure(1:4, .Label = c("1",        "2", "3", "4"), class = "factor")), .Names = c("test", "test2"), row.names = c(NA, -4L), class = "data.frame")

stargazer(data_object,title="table test",summary=FALSE,rownames=FALSE,type="latex",header=FALSE)

它產生的代碼是:

\begin{table}[!htbp] \centering 
  \caption{table test} 
  \label{} 
\begin{tabular}{@{\extracolsep{5pt}} cc} 
\\[-1.8ex]\hline 
\hline \\[-1.8ex] 
test & test2 \\ 
\hline \\[-1.8ex] 
test1 & 1 \\ 
test1 & 2 \\ 
test2 & 3 \\ 
test2 & 4 \\ 
\hline \\[-1.8ex] 
\end{tabular} 
\end{table}

注意\\centering 我該如何更改而不必更改乳膠代碼本身?

似乎\\centering硬編碼到函數中 您可以做的是使用sub刪除\\centering (例如sub(" \\\\\\\\centering", "", out) )。

這是我使用的塊。 我使用capture.output來防止stargazer者輸出我認為是中間結果的東西。

<<results = "asis">>=
library(stargazer)

data_object <- structure(list(test = structure(c(1L, 1L, 2L, 2L), .Label = c("test1",  "test2"), class = "factor"), test2 = structure(1:4, .Label = c("1",        "2", "3", "4"), class = "factor")), .Names = c("test", "test2"), row.names = c(NA, -4L), class = "data.frame")

out <- capture.output(stargazer(data_object,title="table test",summary=FALSE,rownames=FALSE,type="latex",header=FALSE))
out <- sub(" \\\\centering", "", out)
cat(out)
@

在此處輸入圖片說明

@Roman一旦執行此sub(),如何將其實際輸出為LaTeX格式? 我看到cat()打印更新后的文本,但是我不想手動復制粘貼到新文件中。 我需要我的文件自動運行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM