
estou tentando seguireste exemplopara alterar a fonte em uma tabela. É uma solução parcial para o código abaixo. Simplesmente não consigo obter os valores para alterar as fontes também.
\documentclass{article}
\usepackage{booktabs}
\usepackage{etoolbox}
\usepackage[format=plain,
labelformat=simple,
font={small,sf,bf},
indention=0cm,
labelsep=period,
justification=centering,
singlelinecheck=true,
tableposition=top,
figureposition=bottom]{caption}
\makeatletter
\appto\@floatboxreset{%
\ifx\@captype\andy@table
\ttfamily
\fi
}
\def\andy@table{table}
\makeatother
\begin{document}
Blah blah. Should be a serif font.
\begin{table}
\caption{My title}
\begin{center}
\begin{tabular}{l c c c }
\hline
& treat x time & treat x time x female & treat x time x female \\
\hline
(Intercept) & $-0.03$ & $0.01$ & $-0.83^{*}$ \\
& $[-0.16;\ 0.10]$ & $[-0.13;\ 0.15]$ & $[-0.93;\ -0.73]$ \\
v1 & $-0.06$ & $-0.06$ & $-0.07$ \\
& $[-0.23;\ 0.11]$ & $[-0.23;\ 0.11]$ & $[-0.18;\ 0.05]$ \\
v2 & $0.05$ & $-0.03$ & \\
& $[-0.04;\ 0.15]$ & $[-0.16;\ 0.11]$ & \\
\hline
\multicolumn{4}{l}{\scriptsize{$^*$ 0 outside the confidence interval. Fixed effect of time treated as factor.}}
\end{tabular}
\label{m123}
\end{center}
\end{table}
Blah blah. Should be a serif font.
\end{document}
Responder1
Basta remover $
onde for desnecessário (ou seja, em quase todos os lugares).
\documentclass{article}
\usepackage{booktabs}
\usepackage{etoolbox}
\usepackage[format=plain,
labelformat=simple,
font={small,sf,bf},
indention=0cm,
labelsep=period,
justification=centering,
singlelinecheck=true,
tableposition=top,
figureposition=bottom,
]{caption}
\makeatletter
\appto\@floatboxreset{%
\ifx\@captype\andy@table
\ttfamily
\fi
}
\def\andy@table{table}
\makeatother
\begin{document}
Blah blah. Should be a serif font.
\begin{table}
\centering
\caption{My title}\label{m123}
% fix the overfull
\small\addtolength{\tabcolsep}{-2pt}
\begin{tabular}{ l c c c }
\hline
& treat x time & treat x time x female & treat x time x female \\
\hline
(Intercept) & -0.03 & 0.01 & -0.83$^{*}$ \\
& [-0.16; 0.10] & [-0.13; 0.15] & [-0.93; -0.73] \\
v1 & -0.06 & -0.06 & -0.07 \\
& [-0.23; 0.11] & [-0.23; 0.11] & [-0.18; 0.05] \\
v2 & 0.05 & -0.03 & \\
& [-0.04; 0.15] & [-0.16; 0.11] & \\
\hline
\multicolumn{4}{l}{%
\scriptsize $^*$ 0 outside the confidence interval. Fixed effect of time treated as factor.%
}
\end{tabular}
\end{table}
Blah blah. Should be a serif font.
\end{document}
Algumas notas adicionais.
Coloque o
\label
próximo ao objeto ao qual se refere, neste caso o\caption
\scriptsize
não aceita argumento.Não use
center
em umtable
ambiente, mas\centering
.
Se você não quiser tocar na tabela gerada pelo programa externo, é um pouco mais difícil.
\documentclass{article}
\usepackage{booktabs}
\usepackage{etoolbox}
\usepackage[format=plain,
labelformat=simple,
font={small,sf,bf},
indention=0cm,
labelsep=period,
justification=centering,
singlelinecheck=true,
tableposition=top,
figureposition=bottom]{caption}
\makeatletter
\appto\@floatboxreset{%
\ifx\@captype\andy@table
\ttfamily
\everymath{\fam=\group@mathtt\relax\andy@changemathcodes}%
\fi
}
\def\andy@table{table}
\let\andy@space\ %
\AtBeginDocument{%
\check@mathfonts
\sbox\z@{$\mathtt{\xdef\group@mathtt{\gdef\noexpand\group@mathtt{\the\fam}}\group@mathtt}$}%
\def\andy@changemathcodes{%
\count@="2\group@mathtt00 \advance\count@`-\mathcode`-=\count@
\count@="4\group@mathtt00 \advance\count@`[\mathcode`[=\count@
\count@="5\group@mathtt00 \advance\count@`]\mathcode`]=\count@
\count@="0\group@mathtt00 \advance\count@`;\mathcode`;=\count@
\def\ {\mathopen{\andy@space}}%
}%
}
\makeatother
\begin{document}
Blah blah. Should be a serif font; here's math: $a+b$
\begin{table}
\centering
\caption{With dollars}
% fix the overfull
\small\addtolength{\tabcolsep}{-2pt}
\begin{tabular}{ l c c c }
\hline
& treat x time & treat x time x female & treat x time x female \\
\hline
(Intercept) & $-0.03$ & $0.01$ & $-0.83^{*}$ \\
& $[-0.16;\ 0.10]$ & $[-0.13;\ 0.15]$ & $[-0.93;\ -0.73]$ \\
v1 & $-0.06$ & $-0.06$ & $-0.07$ \\
& $[-0.23;\ 0.11]$ & $[-0.23;\ 0.11]$ & $[-0.18;\ 0.05]$ \\
v2 & $0.05$ & $-0.03$ & \\
& $[-0.04;\ 0.15]$ & $[-0.16;\ 0.11]$ & \\
\hline
\multicolumn{4}{l}{%
\scriptsize$^*$ 0 outside the confidence interval. Fixed effect of time treated as factor.%
}
\end{tabular}
\end{table}
\begin{table}[htp]
\centering
\caption{My title}\label{m123}
% fix the overfull
\small\addtolength{\tabcolsep}{-2pt}
\begin{tabular}{ l c c c }
\hline
& treat x time & treat x time x female & treat x time x female \\
\hline
(Intercept) & -0.03 & 0.01 & -0.83$^{*}$ \\
& [-0.16; 0.10] & [-0.13; 0.15] & [-0.93; -0.73] \\
v1 & -0.06 & -0.06 & -0.07 \\
& [-0.23; 0.11] & [-0.23; 0.11] & [-0.18; 0.05] \\
v2 & 0.05 & -0.03 & \\
& [-0.04; 0.15] & [-0.16; 0.11] & \\
\hline
\multicolumn{4}{l}{%
\scriptsize $^*$ 0 outside the confidence interval. Fixed effect of time treated as factor.%
}
\end{tabular}
\end{table}
Blah blah. Should be a serif font; here's math: $a+b$.
\end{document}
Como você pode ver, a saída é a mesma.
Responder2
Isso utilizaPosso alterar toda a saída matemática para usar texto monoespaçado?para adicionar o \everymath
comando apropriado ao seu \@floatboxreset
patch:
\documentclass{article}
\usepackage{etoolbox}
\makeatletter
\appto\@floatboxreset{%
\ifx\@captype\andy@table
\ttfamily
% https://tex.stackexchange.com/q/119879/5764
\everymath{\mathtt{\xdef\tmp{\fam\the\fam\relax}\aftergroup\tmp}}%
\fi
}
\def\andy@table{table}
\makeatother
\begin{document}
\begin{table}
\begin{tabular}{ l *{3}{c} }
\hline
& treat x time & treat x time x female & treat x time x female \\
\hline
(Intercept) & $-0.03$ & $0.01$ & $-0.83^{*}$ \\
& $[-0.16;\ 0.10]$ & $[-0.13;\ 0.15]$ & $[-0.93;\ -0.73]$ \\
v1 & $-0.06$ & $-0.06$ & $-0.07$ \\
& $[-0.23;\ 0.11]$ & $[-0.23;\ 0.11]$ & $[-0.18;\ 0.05]$ \\
v2 & $0.05$ & $-0.03$ & \\
& $[-0.04;\ 0.15]$ & $[-0.16;\ 0.11]$ & \\
\hline
\multicolumn{4}{l}{\scriptsize{$^*$ 0 outside the confidence interval. Fixed effect of time treated as factor.}}
\end{tabular}
\end{table}
\end{document}
Infelizmente, o espaçamento em torno de um sinal de menos unário não é consistente. Por exemplo, veja $a - b$ $-b$ $[-b]$ ${-}b$
:
Talvez seja necessário usar o {-}
para forçar um sinal de menos unário quando necessário.