Изменение размера таблицы.tex в слайдах Rmarkdown Beamer
Проблема:
Таблицы регрессии необходимо сжать, чтобы включить в слайды Beamer, но нельзя сжать их в RMarkdown без копирования и вставки необработанного TeX. Есть ли более простой способ сделать это, чтобы я мог автоматизировать эту часть моего рабочего процесса?
Фон
Мои регрессии автоматически генерируют файлы.tex для таблиц регрессии. Однако, когда я пытаюсь ввести файлы в мои слайды Beamer (созданные в Rmarkdown), они становятся слишком большими, и мне приходится вручную копировать, вставлять и изменять их размер, чтобы они подходили. Ниже MWE
table.tex
\begin{table}[!htbp] \centering
\caption{Title}
\begin{tabular}{lcccccc}
\\[-1.8ex]\hline
\hline \\[-1.8ex]
& \multicolumn{6}{c}{Dependent Var} \\
\hline \\[-1.8ex]
Independent Var & $-$0.031 & 0.012 & $-$0.264 & $-$0.267 & $-$0.107 & $-$1.980 \\
\hline
\hline \\[-1.8ex]
\textit{Note:} & \multicolumn{6}{l}{$^{*}$p$<$0.1; $^{**}$p$<$0.05; $^{***}$p$<$0.01} \\
\end{tabular}
\end{table}
RMarkdown.Rmd
---
title: "Title"
output:
beamer_presentation:
slide_level: 3
keep_tex: false
---
### Test Results
\input{table.tex}
Временное решение
Скопируйте / вставьте таблицу.tex и добавьте \resizebox{}{}
окружающих \begin{tabular}...\end{tabular}
Workaround.Rmd
---
title: "Title"
output:
beamer_presentation:
slide_level: 3
keep_tex: false
---
### Test Results
\begin{table}[!htbp] \centering
\caption{Title}
\resizebox{0.98\textwidth}{!}{
\begin{tabular}{lcccccc}
\\[-1.8ex]\hline
\hline \\[-1.8ex]
& \multicolumn{6}{c}{Dependent Var} \\
\hline \\[-1.8ex]
Independent Var & $-$0.031 & 0.012 & $-$0.264 & $-$0.267 & $-$0.107 & $-$1.980 \\
\hline
\hline \\[-1.8ex]
\textit{Note:} & \multicolumn{6}{l}{$^{*}$p$<$0.1; $^{**}$p$<$0.05; $^{***}$p$<$0.01} \\
\end{tabular}
}
\end{table}
1 ответ
Масштабирование элементов, содержащих текст, может привести к неоптимальной читаемости текста. Вместо этого вы можете использовать
fitting
библиотека из
tcolorbox
пакет для автоматического выбора подходящего размера шрифта:
---
title: "Title"
output:
beamer_presentation:
slide_level: 3
keep_tex: false
header-includes:
- \usepackage{tcolorbox}
- \tcbuselibrary{fitting}
---
### Test Results
\begin{tcolorbox}[fit,width=\textwidth,height=.9\textheight,size=minimal,colback=white,fit algorithm=fontsize,colframe=white]
\input{table.tex}
\end{tcolorbox}