Espaçamento vertical insuficiente com booktabs e siunitx

Espaçamento vertical insuficiente com booktabs e siunitx

Estou usando siunitx e booktabs, mas preciso de um pouco mais de espaço vertical entre minhas unidades.

Aqui está uma foto do meu problema:

problema de espaçamento siunitx

Aqui está um MWE:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{siunitx}
\sisetup{range-phrase=-,
            detect-all,
            decimalsymbol=comma,
            round-mode=figures,
            round-precision=3,
            range-units=single,
            per-mode=fraction,}
\usepackage{booktabs}

\begin{document}

\begin{table}[htbp]
    \centering
        \begin{tabular}[]{llr}
            \toprule 
            Parameter & Symbol & Wert   \\ 
        \midrule 
            A       &A2         &\SI{1096}{\kg \per \cubic \meter } \\ 
            B       &B2         &\SI{0,422}{\watt \per \meter \per \kelvin} \\ 
            C       &C2         &\SI{3220}{\joule \per \kg \per \kelvin}    \\ 
            D       &D2         &\SI{0,0274}{\kg \per \meter \per \second}      \\ 
            \bottomrule
        \end{tabular}
\end{table}

\end{document}

Responder1

A forma automática utiliza o cellspacepacote, o que garante ummínimoespaçamento vertical na parte superior e inferior das células em colunas com especificador prefixado com uma determinada letra – o padrão é S, mas ao carregar o siunitx, temos que usar outra letra, definível como opção no momento do carregamento. Aqui está como vai com a sua mesa:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{siunitx}
\sisetup{range-phrase=-,
            detect-all,
            decimalsymbol=comma,
            round-mode=figures,
            round-precision=3,
            range-units=single,
            per-mode=fraction,}
\usepackage{booktabs}
\usepackage[column=O]{cellspace}
\setlength{\cellspacetoplimit}{3pt}
\setlength{\cellspacebottomlimit}{3pt}

\begin{document}

\begin{table}[htbp]
    \centering
        \begin{tabular}[]{llOr}
            \toprule
            Parameter & Symbol & Wert \\
        \midrule
            A &A2 &\SI{1096}{\kg \per \cubic \meter } \\
            B &B2 &\SI{0,422}{\watt \per \meter \per \kelvin} \\
            C &C2 &\SI{3220}{\joule \per \kg \per \kelvin} \\
            D &D2 &\SI{0,0274}{\kg \per \meter \per \second} \\
            \bottomrule
        \end{tabular}
\end{table}

\end{document} 

insira a descrição da imagem aqui

Responder2

Bernard deu uma resposta usando cellspace. O pacote nicematrix(que fornece diversas ferramentas para desenhar tabulares e matrizes matemáticas) tem uma abordagem um pouco diferente: todas as colunas dos ambientes {NiceTabular}de nicematrixsão do tipo 'cellspace' e você tem duas chaves cell-space-top-limite cell-space-bottom-limitsemelhantes aos parâmetros \cellspacetoplimite \cellspacebottomlimitde cellspace.

\documentclass{article}
\usepackage{siunitx}
\sisetup{range-phrase=-,
            detect-all,
            decimalsymbol=comma,
            round-mode=figures,
            round-precision=3,
            range-units=single,
            per-mode=fraction}
\usepackage{nicematrix}
\usepackage{booktabs}

\begin{document}

\NiceMatrixOptions{cell-space-top-limit=3pt,cell-space-bottom-limit=3pt}


\begin{table}[htbp]
    \centering
        \begin{NiceTabular}[]{llr}
            \toprule 
            Parameter & Symbol & Wert   \\ 
        \midrule 
            A       &A2         &\SI{1096}{\kg \per \cubic \meter } \\ 
            B       &B2         &\SI{0,422}{\watt \per \meter \per \kelvin} \\ 
            C       &C2         &\SI{3220}{\joule \per \kg \per \kelvin}    \\ 
            D       &D2         &\SI{0,0274}{\kg \per \meter \per \second}      \\ 
            \bottomrule
        \end{NiceTabular}
\end{table}

\end{document}

Saída do código acima

Responder3

Uma possibilidade é ampliar `\arraystretch˙e mudar a forma de escrever unidades:

\documentclass{article}
\usepackage{siunitx}
\sisetup{range-phrase=-,
            detect-all,
            decimalsymbol=comma,
            round-mode=figures,
            round-precision=3,
            range-units=single,
            per-mode=symbol,}   % <---
\usepackage{booktabs}

\begin{document}

\begin{table}[htbp]
    \centering
    \renewcommand\arraystretch{1.2} % <---
        \begin{tabular}[]{llr}
            \toprule
            Parameter & Symbol & Wert   \\
        \midrule
            A       &A2         &\SI{1096}{\kg \per \cubic \meter } \\
            B       &B2         &\SI{0,422}{\watt \per \meter \per \kelvin} \\
            C       &C2         &\SI{3220}{\joule \per \kg \per \kelvin}    \\
            D       &D2         &\SI{0,0274}{\kg \per \meter \per \second}      \\
            \bottomrule
        \end{tabular}
\end{table}

\end{document}

insira a descrição da imagem aqui

informação relacionada