【问题标题】:No indentation in footnote with kableExtra::kbl for latex outputkableExtra::kbl 脚注中没有缩进,用于乳胶输出
【发布时间】:2021-12-09 15:52:13
【问题描述】:

我正在尝试删除使用 kableExtra 创建的表的脚注部分中的缩进。我假设缩进来自注释开始之前的\item 函数(参见乳胶输出)。任何人都可以帮助删除这个缩进。注释中的\item 前缀?

library(dplyr)
library(kableExtra)

data(mtcars)
tab_data <- mtcars[1:5, 1:3]

cat(
  kbl(
    x = tab_data,
    format = "latex",
    booktabs = TRUE,
  ) %>%
    kable_styling(full_width = FALSE) %>%
    footnote(
      general = "Here is a note of the table. It is very long and I would want to remove this ugly indention on the left side of the table notes. ",
      general_title = "",
      threeparttable = TRUE
    )
)

这里是乳胶输出:

\begin{table}
\centering
\begin{threeparttable}
\begin{tabular}[t]{lrrr}
\toprule
  & mpg & cyl & disp\\
\midrule
Mazda RX4 & 21.0 & 6 & 160\\
Mazda RX4 Wag & 21.0 & 6 & 160\\
Datsun 710 & 22.8 & 4 & 108\\
Hornet 4 Drive & 21.4 & 6 & 258\\
Hornet Sportabout & 18.7 & 8 & 360\\
\bottomrule
\end{tabular}
\begin{tablenotes}
\item Here is a note of the table. It is very long and I would want to remove this ugly indention on the left side of the table notes. 
\end{tablenotes}
\end{threeparttable}
\end{table}

以及 PDF 的打印屏幕和缩进:

【问题讨论】:

    标签: r kableextra


    【解决方案1】:

    你可以加footnote_as_chunk = T:

    library(dplyr)
    library(kableExtra)
    
    data(mtcars)
    tab_data <- mtcars[1:5, 1:3]
    
    kbl(
        x = tab_data,
        format = "latex",
        booktabs = TRUE,
      ) %>%
        kable_styling(full_width = FALSE) %>%
        footnote(
          general = "Here is a note of the table. It is very long and I would want to remove this ugly indention on the left side of the table notes. ",
          general_title = "",
          threeparttable = TRUE,
          footnote_as_chunk = T
        )
    

    -输出

    【讨论】:

    • 几乎完美!第一行还有一个小缩进。我认为这是因为在乳胶输出中,脚注仍标记为\item。但我认为没有办法解决这个问题?还是谢谢!
    【解决方案2】:

    如果您不介意更改软件包,可以使用 huxtable。然后,您可以根据需要自定义填充、边框等:

    library(huxtable)
    tab_data <- cbind(model = rownames(tab_data), tab_data)
    huxtable(tab_data) |> 
          set_width(0.5) |> 
          theme_article() |>
          add_footnote("Here is a note of the table. It is very long and I would want to remove this ugly indention on the left side of the table notes. ") |> 
          theme_
          set_left_padding(everywhere, 1, 0.1) # change 0.1 to whatever you prefer
          quick_pdf()
    

    需要注意的一点:这只是在表格底部添加一个单元格。它不使用 TeX 脚注或表格注。

    【讨论】:

    • 嗯,不错的建议!我一定要看看huxtable。我不会接受您的帖子作为答案,因为 bttomio 的答案更适合发布的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-24
    相关资源
    最近更新 更多