Eu fiz uma tabela usando o pacote \booktabs e o resultado é o seguinte
com o código:
\begin{table}[h!]
\centering
\begin{tabular}{@{}lll@{}}
\toprule
Process & Cross section\\
\midrule
GGF & 43.92 \\
VBF & 3.748 \\
WH & 1.380 \\
ZH & 0.9753 \\
ttH & 0.5085 \\
bbH & 0.5116 \\
\bottomrule
\end{tabular}
\end{table}
Porém, quero que a mesa não fique tão espalhada verticalmente, ou seja, reduza o espaçamento entre as linhas. Algo assim:
Como posso fazer isso? Obrigado!
Responder1
O espaçamento entre as linhas da tabela pode ser controlado usando \def\arraystretch{0.50}
.
\documentclass[english]{article}
\usepackage{booktabs}
\begin{document}
\begingroup
\tabcolsep = 15.0pt
\def\arraystretch{0.50}
\begin{table}[h!]
\centering
\begin{tabular}{@{}lll@{}}
\toprule
Process & Cross section\\
\midrule
GGF & 43.92 \\
VBF & 3.748 \\
WH & 1.380 \\
ZH & 0.9753 \\
ttH & 0.5085 \\
bbH & 0.5116 \\
\bottomrule
\end{tabular}
\end{table}
\endgroup
\end{document}
Responder2
A configuração da segunda tabela é na verdade a configuração padrão, mas mostra como o trecho da matriz pode ser redefinido para 1 se tiver sido ampliado anteriormente no documento. Nos comentários você indicou que não sabia que parte do seu código estava configurando ou qual valor ele tinha, então mostro aqui uma maneira de imprimi-lo na legenda (ou em qualquer lugar) apenas para depuração. Com a maioria das fontes, \arraystretch
não deve ser definido menos que 1 como isso tornará as linhas da tabela altas o suficiente para conter seu conteúdo, normalmente um espaçamento mínimo consistente entre linhas é mantido, mesmo que uma linha tenha todas as letras minúsculas ou conteúdo vazio.
\documentclass{article}
\usepackage{booktabs}
\renewcommand\arraystretch{3}
\begin{document}
\begin{table}[htp]% never use h on its own like: [h!]
\centering
\caption{with \arraystretch}
\begin{tabular}{@{}lll@{}}
\toprule
Process & Cross section\\
\midrule
GGF & 43.92 \\
VBF & 3.748 \\
WH & 1.380 \\
ZH & 0.9753 \\
ttH & 0.5085 \\
bbH & 0.5116 \\
\bottomrule
\end{tabular}
\end{table}
\renewcommand\arraystretch{1}
\begin{table}[htp]% never use h on its own like: [h!]
\centering
\caption{with \arraystretch}
\begin{tabular}{@{}lll@{}}
\toprule
Process & Cross section\\
\midrule
GGF & 43.92 \\
VBF & 3.748 \\
WH & 1.380 \\
ZH & 0.9753 \\
ttH & 0.5085 \\
bbH & 0.5116 \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
Responder3
O problema \arraystretch
já foi explicado em outras respostas. Aditivos:
- Os números podem ser alinhados no marcador decimal via package
siunitx
. - Existem apenas duas colunas.
- Uma tabela centralizada horizontalmente que não seja um objeto flutuante e não tenha legenda pode ser definida mais facilmente com ambiente
center
.
Arquivo de exemplo completo:
\documentclass{article}
\usepackage{booktabs}
\usepackage{siunitx}
\begin{document}
\begin{center}
\renewcommand*{\arraystretch}{1}% reset to default
\begin{tabular}{lS[table-format=2.4]}
\toprule
Process & {Cross section [\si{\pico\barn}]}\\
\midrule
GGF & 43.92 \\
VBF & 3.748 \\
WH & 1.380 \\
ZH & 0.9753 \\
ttH & 0.5085 \\
bbH & 0.5116 \\
\bottomrule
\end{tabular}
\end{center}
\end{document}