1

I am trying to produce a table 24*9 with text. If you run the code below you see that the columns to the right is outside of the table. I guess this could have something to do with the first and second column being connect too, no space between the values inside the columns.

Thankful for any input. Thanks.

\documentclass{article}
\usepackage{booktabs}
\begin{document}
\begin{table}[h!]
\small
\caption{DM Test}
\label{table:5:2}

\begin{tabular}{\textwidth}{c @{\extracolsep{\fill}} lllllllll} \toprule {} & \multicolumn{2}{c}{Zone 1} & \multicolumn{2}{c}{Zone 2} & \multicolumn{2}{c}{Zone 3} & \multicolumn{2}{c}{Zone 4} \ \cmidrule(lr){2-3} \cmidrule(lr){4-5} \cmidrule(lr){6-7} \cmidrule(l){8-9} {} & 2021 & 2022 & 2021 & 2022 & 2021 & 2022 & 2021 & 2022 \ \midrule 1 & Auto & Auto & Auto & Auto & Auto & Auto & Auto & Auto \ 2 & Auto & Auto & Auto & Auto & LEAR & LEAR & Auto & Auto* \ 3 & Auto & LEAR*** & Auto & Auto*** & LEAR & LEAR & LEAR & LEAR*** \ 4 & Auto & Expert*** & Auto & Expert*** & LEAR & LEAR & LEAR & LEAR** \ 5 & Auto*** & Expert** & Expert*** & Expert*** & LEAR & LEAR & LEAR & Expert*** \ 6 & Expert** & Expert** & Expert** & Expert** & Expert** & LEAR & Expert** & Expert*** \ 7 & Expert* & Expert* & Expert* & Expert* & Expert & LEAR* & Expert & LEAR*** \ 8 & Expert & Expert*** & LEAR*** & LEAR*** & Expert** & LEAR & Expert*** & LEAR** \ 9 & Expert & Expert*** & Expert*** & Expert** & Expert*** & LEAR & Expert*** & LEAR* \ 10 & Expert & LEAR*** & Expert* & Expert*** & LEAR*** & LEAR & LEAR** & LEAR*** \ 11 & Expert & Expert*** & Expert*** & Expert*** & Expert** & LEAR* & Expert*** & LEAR*** \ 12 & Expert & Expert* & Expert** & Expert* & Expert** & LEAR & Expert*** & Auto*** \ 13 & Expert & Expert** & Expert & Expert* & Expert** & LEAR & Expert*** & LEAR*** \ 14 & Expert & Expert** & Expert* & Expert* & Expert* & LEAR* & Expert*** & LEAR*** \ 15 & Expert* & Expert** & Expert** & Expert* & Expert & LEAR*** & Expert*** & LEAR*** \ 16 & Expert & Expert* & Expert** & Expert** & Expert & Expert*** & Expert*** & LEAR*** \ 17 & Expert* & Expert*** & Expert*** & Expert*** & Expert*** & Expert* & Expert*** & LEAR*** \ 18 & Expert & LEAR** & LEAR*** & LEAR*** & Expert*** & Naive** & LEAR** & Naive** \ 19 & Naive*** & LEAR*** & Naive*** & LEAR*** & Naive*** & Naive & Expert*** & Naive \ 20 & Naive*** & LEAR*** & Naive** & LEAR*** & Naive** & Naive* & LEAR* & Naive \ 21 & Naive & LEAR** & Naive & LEAR** & Naive* & LEAR* & LEAR*** & Naive \ 22 & Naive & LEAR** & Naive & LEAR* & Naive & LEAR** & Expert** & Naive* \ 23 & Naive & LEAR** & Naive & LEAR** & Naive & LEAR* & Expert** & Naive* \ 24 & Naive & LEAR* & Naive & LEAR* & Naive & LEAR & Naive & Naive* \ \bottomrule \end{tabular*} \smallskip

\footnotesize

\end{table} \end{document}

anis
  • 1,510
  • 5
  • 13
  • Please tell us which paper size you employ and how wide the margins are supposed to be. – Mico Dec 27 '22 at 12:38
  • Already answered i think: https://tex.stackexchange.com/questions/439111/how-to-wrap-around-table-row-width – anis Dec 27 '22 at 12:51
  • 2
    Your table is probably wider than \textwidth. Try using a page size that is wider. And also you specify 10 columns, but only use 9 of them. – Pieter van Oostrum Dec 27 '22 at 13:13

2 Answers2

2
  • Your table is quite a bit wider than default \textwidth of ąrticle document class, so I suggest to use geometry package and make it bigger
  • If this is not an option, than you need to put table landscape oriented page
  • I suppose that you looking for threeparttable or talltblr equivalent of tabularray package:
\documentclass{article}
\usepackage{geometry}       %  needed!  otherwise cells will overlap
\usepackage{tabularray}
\UseTblrLibrary{booktabs}

\begin{document} \begin{table}[h!] \SetTblrStyle{note}{font=\footnotesize} \begin{talltblr}[ \small caption = {DM Test}, label = {table:5:2}, note{} = {some text, : \dots, : \dots and : \dots. } ]{colspec = {@{} r {8}{X[l]} @{}}, row{3-Z}= {rowsep = 0pt}, row{even[3-X]} = {belowsep=1ex} } \toprule & \SetCell[c=2]{c} Zone 1 & & \SetCell[c=2]{c} Zone 2 & & \SetCell[c=2]{c} Zone 3 & & \SetCell[c=2]{c} Zone 4 & \ \cmidrule[r]{2-3} \cmidrule[r]{4-5} \cmidrule[r]{6-7} \cmidrule{8-9} & 2021 & 2022 & 2021 & 2022 & 2021 & 2022 & 2021 & 2022 \ \midrule 1 & Auto & Auto & Auto & Auto & Auto & Auto & Auto & Auto \ 2 & Auto & Auto & Auto & Auto & LEAR & LEAR & Auto & Auto* \ 3 & Auto & LEAR* & Auto & Auto*** & LEAR & LEAR & LEAR & LEAR*** \ 4 & Auto & Expert*** & Auto & Expert*** & LEAR & LEAR & LEAR & LEAR** \ 5 & Auto*** & Expert** & Expert*** & Expert*** & LEAR & LEAR & LEAR & Expert*** \ 6 & Expert** & Expert** & Expert** & Expert** & Expert** & LEAR & Expert** & Expert*** \ 7 & Expert* & Expert* & Expert* & Expert* & Expert & LEAR* & Expert & LEAR*** \ 8 & Expert & Expert*** & LEAR*** & LEAR*** & Expert** & LEAR & Expert*** & LEAR** \ 9 & Expert & Expert*** & Expert*** & Expert** & Expert*** & LEAR & Expert*** & LEAR* \ 10 & Expert & LEAR*** & Expert* & Expert*** & LEAR*** & LEAR & LEAR** & LEAR*** \ 11 & Expert & Expert*** & Expert*** & Expert*** & Expert** & LEAR* & Expert*** & LEAR*** \ 12 & Expert & Expert* & Expert** & Expert* & Expert** & LEAR & Expert*** & Auto*** \ 13 & Expert & Expert** & Expert & Expert* & Expert** & LEAR & Expert*** & LEAR*** \ 14 & Expert & Expert** & Expert* & Expert* & Expert* & LEAR* & Expert*** & LEAR*** \ 15 & Expert* & Expert** & Expert** & Expert* & Expert & LEAR*** & Expert*** & LEAR*** \ 16 & Expert & Expert* & Expert** & Expert** & Expert & Expert*** & Expert*** & LEAR*** \ 17 & Expert* & Expert*** & Expert*** & Expert*** & Expert*** & Expert* & Expert*** & LEAR*** \ 18 & Expert & LEAR** & LEAR*** & LEAR*** & Expert*** & Naive** & LEAR** & Naive** \ 19 & Naive*** & LEAR*** & Naive*** & LEAR*** & Naive*** & Naive & Expert*** & Naive \ 20 & Naive*** & LEAR*** & Naive** & LEAR*** & Naive** & Naive* & LEAR* & Naive \ 21 & Naive & LEAR** & Naive & LEAR** & Naive* & LEAR* & LEAR*** & Naive \ 22 & Naive & LEAR** & Naive & LEAR* & Naive & LEAR** & Expert** & Naive* \ 23 & Naive & LEAR** & Naive & LEAR** & Naive & LEAR* & Expert** & Naive* \ 24 & Naive & LEAR* & Naive & LEAR* & Naive & LEAR & Naive & Naive* \ \bottomrule \end{talltblr} \end{table} \end{document}

enter image description here

Mico
  • 506,678
Zarko
  • 296,517
  • 1
    @Mico, thank you very much for editing my answer. – Zarko Dec 28 '22 at 01:38
  • Thank you. Is there a way to see that the table is wider than the \textwidth, or how do you know this? – Simon Rydstedt Dec 28 '22 at 09:57
  • @SimonRydstedt, table is defined so, that can't be wider than \textwidth. If you like to see, that this is true, in preamble add \usepackage{showframe} (which you should remove in final version of document). – Zarko Dec 28 '22 at 11:26
2

I suggest you set \tabcolsep to 0pt and let LaTeX figure out the available amount of intercolumn whitespace.

enter image description here

\documentclass{article}
\usepackage[letterpaper,margin=1in]{geometry} % set applicable page parameter values
\usepackage{booktabs}

\begin{document}

\begin{table}[h!] %\small % not needed \setlength\tabcolsep{0pt} % let LaTeX figure out intercol. whitespace \caption{DM Test\strut} \label{table:5:2}

\begin{tabular}{\textwidth}{l @{\extracolsep{\fill}} {8}{l}} \toprule & \multicolumn{2}{c}{Zone 1} & \multicolumn{2}{c}{Zone 2} & \multicolumn{2}{c}{Zone 3} & \multicolumn{2}{c}{Zone 4} \ \cmidrule{2-3} \cmidrule{4-5} \cmidrule{6-7} \cmidrule{8-9} & 2021 & 2022 & 2021 & 2022 & 2021 & 2022 & 2021 & 2022 \ \midrule 1 & Auto & Auto & Auto & Auto & Auto & Auto & Auto & Auto \ 2 & Auto & Auto* & Auto & Auto & LEAR & LEAR & Auto & Auto* \ 3 & Auto & LEAR*** & Auto & Auto*** & LEAR & LEAR & LEAR & LEAR*** \ 4 & Auto & Expert*** & Auto & Expert*** & LEAR & LEAR & LEAR & LEAR** \ 5 & Auto*** & Expert** & Expert*** & Expert*** & LEAR & LEAR & LEAR & Expert*** \ 6 & Expert** & Expert** & Expert** & Expert** & Expert** & LEAR & Expert** & Expert*** \ \addlinespace 7 & Expert* & Expert* & Expert* & Expert* & Expert & LEAR* & Expert & LEAR*** \ 8 & Expert & Expert*** & LEAR*** & LEAR*** & Expert** & LEAR & Expert*** & LEAR** \ 9 & Expert & Expert*** & Expert*** & Expert** & Expert*** & LEAR & Expert*** & LEAR* \ 10 & Expert & LEAR*** & Expert* & Expert*** & LEAR*** & LEAR & LEAR** & LEAR*** \ 11 & Expert & Expert*** & Expert*** & Expert*** & Expert** & LEAR* & Expert*** & LEAR*** \ 12 & Expert & Expert* & Expert** & Expert* & Expert** & LEAR & Expert*** & Auto*** \ \addlinespace 13 & Expert & Expert** & Expert & Expert* & Expert** & LEAR & Expert*** & LEAR*** \ 14 & Expert & Expert** & Expert* & Expert* & Expert* & LEAR* & Expert*** & LEAR*** \ 15 & Expert* & Expert** & Expert** & Expert* & Expert & LEAR*** & Expert*** & LEAR*** \ 16 & Expert & Expert* & Expert** & Expert** & Expert & Expert*** & Expert*** & LEAR*** \ 17 & Expert* & Expert*** & Expert*** & Expert*** & Expert*** & Expert* & Expert*** & LEAR*** \ 18 & Expert & LEAR** & LEAR*** & LEAR*** & Expert*** & Naive** & LEAR** & Naive** \ \addlinespace 19 & Naive*** & LEAR*** & Naive*** & LEAR*** & Naive*** & Naive & Expert*** & Naive \ 20 & Naive*** & LEAR*** & Naive** & LEAR*** & Naive** & Naive* & LEAR* & Naive \ 21 & Naive & LEAR** & Naive & LEAR** & Naive* & LEAR* & LEAR*** & Naive \ 22 & Naive & LEAR** & Naive & LEAR* & Naive & LEAR** & Expert** & Naive* \ 23 & Naive & LEAR** & Naive & LEAR** & Naive & LEAR* & Expert** & Naive* \ 24 & Naive & LEAR* & Naive & LEAR* & Naive & LEAR & Naive & Naive* \ \bottomrule \end{tabular*} \end{table}

\end{document}

Mico
  • 506,678
  • Thank you. I think this solution is sligthly better then the other answer since here the stars on the last column is inside the table limits. – Simon Rydstedt Dec 28 '22 at 09:59