# Help to fix a table

I tried using a template that is working well for a more numerical table but I created a monster trying to adapt it to new needs. Here it is the mwe:

\documentclass[a4paper, 11pt]{scrreprt}
\usepackage{amsmath,booktabs,siunitx}
\usepackage[version=4]{mhchem}
\sisetup{separate-uncertainty}

\smash[b]{%
\begin{tabular}[t]{@{}c@{}}#1\end{tabular}%
}%
}

\begin{document}

\begin{table}[h]

\caption{Caption here.}\label{whatever}

\setlength{\tabcolsep}{0pt}

\begin{tabular*}{\linewidth}{
@{\extracolsep{\fill}}
r
S[table-format=2.1]
r
S[table-format=1.2]
r
S[table-format=4.0]
r
r
}
\toprule
{\textbf{Material} } &
{ \textbf{Model}} &
{\tabhead{\textbf{Salt Concentration} \\ \textbf{({M} \ce{NaCl})}}} &
{\textbf{pH}} &
{\textbf{Buffer}} &
{\tabhead{Range of Dextrans \\ \textbf{(kDa)}}} &
&&&  \\
\midrule
LongName AA         &   18.4 & Simple model   &   0   & 20 mM Bis-Tris          &   6.5     &   0.18 to 500      &  [1,2]   \\
LongName AA         &   25.8 & complex model  & 0.12  &  10 mM Tris-\ce{HCl}    &   7.2     & 0.18 to 20000      &  [3] \\
AA LongName  AA     &   15.0 & complex model  & 1     &  10 mM phosphate        &   8.0     &  4 to 400          &  [4,2]\\

\bottomrule
\end{tabular*}
\label{}

\end{table}

\end{document}


It compiles without error but on the one hand it doesn't fit in the page so I cannot see the whole table, and there are other many wrong things like:

• headers overlap. No proper distance between the titles.
• How to arrange the elements right-justified but centering the header?
• should I use tabularx in this situation?

Any help is appreciated!

There's little hope to make those long headers to fit in the page limit. I suggest to use acronyms that are explained just below the table (or in the caption, perhaps).

\documentclass[a4paper, 11pt]{scrreprt}
\usepackage{amsmath,booktabs,siunitx}
\usepackage[version=4]{mhchem}
\sisetup{separate-uncertainty}

\begin{document}

\begin{table}[htp]

\caption{Caption here.}\label{whatever}

\setlength{\tabcolsep}{0pt}

\footnotesize

\begin{tabular*}{\linewidth}{
@{\extracolsep{\fill}}
l
S[table-format=2.1]
l
S[table-format=1.2]
l
S[table-format=1.1]
l
r
}
\toprule
\textbf{Material} & {\textbf{MPR}} & \multicolumn{1}{c}{\textbf{Model}} & {\textbf{SC}} &
\multicolumn{1}{c}{\textbf{pH}} & {\textbf{B}} & \textbf{RD} & \textbf{Ref.} \\
\midrule
LongName AA    & 18.4 & Simple model  & 0    & 20 mM Bis-Tris      & 6.5 & 0.18 to 500   &  [1,2] \\
LongName AA    & 25.8 & complex model & 0.12 & 10 mM Tris-\ce{HCl} & 7.2 & 0.18 to 20000 &  [3] \\
AA LongName AA & 15.0 & complex model & 1    & 10 mM phosphate     & 8.0 & 4 to 400      &  [4,2] \\
\midrule[\heavyrulewidth]
\end{tabular*}
\begin{tabular*}{\textwidth}[t]{@{\extracolsep{\fill}}lll}
MPR: Mean Pore Radius (\si{\nano\meter}) &
SC: Salt Concentration (M \ce{NaCl}) &
B: Buffer \\
RD: Range of Dextrans (kDa) & Ref.: Reference
\end{tabular*}

\end{table}

\end{document}


Without \footnotesize the columns would be too squeezed. Depending on your text width, \small could do.

• how about three part table? – subham soni Mar 5 at 14:13
• Maybe it's not necessary to add model three times? The column head should be enough. – Bernard Mar 5 at 14:21
• Thanks for the suggestions! I like the way to display the acronyms. I might use it for the text inside the table and keep some headers. – egil137 Mar 5 at 14:21
• @Bernard totally. This was just a sample text I added to get an idea. I think I´ll actually use acronyms for the name of the models and add them at the bottom as suggested. – egil137 Mar 5 at 14:23