[Tex/LaTex] Alignment of table header in column with decimal numbers using siunitx

siunitxtables

I have a table with decimal numbers aligned at decimal point. In the column header, I have a % sign. In the code snippet given below, the percent sign is aligned at the left in the column, but I would like it to be either aligning with the decimal points or to the right. How can I achieve this?

Current result:

enter image description here

\documentclass[ngerman]{scrbook}
\usepackage{siunitx}

\begin{document}

\begin{tabular}{l S[table-format=3.2]}
    \textbf{fruit} & \textbf{\%} \\
    apple   & 12,34 \\
    banana  & ,1 \\
    cherry  & 1,2345 \\
    coconut & 100 \\
\end{tabular}

\end{document}

Best Answer

You can align to the right by using multicolumn:

\documentclass[ngerman]{scrbook}
\usepackage{siunitx}

\begin{document}

\begin{tabular}{l S[table-format=3.4]}
    \textbf{fruit} & \multicolumn{1}{r}{\textbf{\%}} \\         %  
    apple   & 12,34 \\
    banana  & ,1 \\
    cherry  & 1,2345 \\
    coconut & 100 \\
\end{tabular}

\end{document}

I have changed S[table-format=3.2] to S[table-format=3.4] so as to compensate for the entry in cherry..

enter image description here

Related Question