Align tables in LaTeX [closed] - latex

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 8 years ago.
Improve this question
Is there a way to align tables in LaTeX?
I was writing a document with several tables in the same page, and often the edges don't match.
I would like to have tables aligned in both left and right edge.
\paragraph{Articoli}
\begin{large}
\begin{tabular}{ | l | l | l | p{3cm} |}
\hline
\textbf{Attributo} & \textbf{Tipo} & \textbf{Byte} & \textbf{Complessivo}
\\ \hline
& & & 1500 occorrenze \\ \hline
Codice & Char(7) & 7 & 10,7 kB \\ \hline
Nome & Varchar (100) & 100 & 150 kB \\ \hline
Marca & Varchar (100) & 100 & 150 kB \\ \hline
Prezzo & Money & 8 & 12,2 kB \\ \hline
Disponibile & Integer & 4 & 6.2 kB \\ \hline
Soglia & Integer & 4 & 6.2 kB \\ \hline
Reparto & Char (4) & 4 & 6.2 kB \\ \hline
Totale & & & 321 kB \\ \hline
Dati + Block Header & & & 322 kB \\ \hline
\end{tabular}
\paragraph{Reparti}
\begin{tabular}{ | l | l | l | p{3cm} |}
\hline
\textbf{Attributo} & \textbf{Tipo} & \textbf{Byte} & \textbf{Complessivo}
\\ \hline
& & & 120 occorrenze \\ \hline
Codice & Char(4) & 4 & 0,5 kB \\ \hline
Nome & Varchar (100) & 100 & 12.1 kB \\ \hline
Sezione & Char(4) & 4 & 0.5 kB \\ \hline
Totale & & & 12.2 kB \\ \hline
Dati + Block Header & & & 12.3 kB \\ \hline
\end{tabular}
\paragraph{Pagamenti}
\begin{tabular}{ | l | l | l | p{3cm} |}
\hline
\textbf{Attributo} & \textbf{Tipo} & \textbf{Byte} & \textbf{Complessivo} \\ \hline
& & & 10 occorrenze \\ \hline
Codice & Char(4) & 4 & 0,1 kB \\ \hline
Nome & Varchar (100) & 100 & 1 kB \\ \hline
Totale & & & 1.1 kB \\ \hline
Dati + Block Header & & & 1.2 kB \\ \hline
\end{tabular}

There are a number of ways to achieve this alignment:
Use a single tabular that would contain everything. This ensures the columns all use the same width:
\documentclass{article}
\begin{document}
\begin{tabular}{ l | l | l | l | p{3cm} |}
\cline{2-5}
& \textbf{Attributo} & \textbf{Tipo} & \textbf{Byte} & \textbf{Complessivo} \\
\cline{2-5}
& & & & 1500 occorrenze \\ \cline{2-5}
& Codice & Char(7) & 7 & 10,7 kB \\ \cline{2-5}
& Nome & Varchar (100) & 100 & 150 kB \\ \cline{2-5}
& Marca & Varchar (100) & 100 & 150 kB \\ \cline{2-5}
\textbf{Articoli} & Prezzo & Money & 8 & 12,2 kB \\ \cline{2-5}
& Disponibile & Integer & 4 & 6.2 kB \\ \cline{2-5}
& Soglia & Integer & 4 & 6.2 kB \\ \cline{2-5}
& Reparto & Char (4) & 4 & 6.2 kB \\ \cline{2-5}
& Totale & & & 321 kB \\ \cline{2-5}
& Dati + Block Header & & & 322 kB \\ \cline{2-5}
\multicolumn{1}{l}{}\\[\bigskipamount]
\cline{2-5}
& \textbf{Attributo} & \textbf{Tipo} & \textbf{Byte} & \textbf{Complessivo} \\
\cline{2-5}
& & & & 120 occorrenze \\ \cline{2-5}
& Codice & Char(4) & 4 & 0,5 kB \\ \cline{2-5}
\textbf{Reparti} & Nome & Varchar (100) & 100 & 12.1 kB \\ \cline{2-5}
& Sezione & Char(4) & 4 & 0.5 kB \\ \cline{2-5}
& Totale & & & 12.2 kB \\ \cline{2-5}
& Dati + Block Header & & & 12.3 kB \\ \cline{2-5}
\multicolumn{1}{l}{}\\[\bigskipamount]
\cline{2-5}
& \textbf{Attributo} & \textbf{Tipo} & \textbf{Byte} & \textbf{Complessivo} \\
\cline{2-5}
& & & & 10 occorrenze \\ \cline{2-5}
& Codice & Char(4) & 4 & 0,1 kB \\ \cline{2-5}
\raisebox{.5\normalbaselineskip}[0pt][0pt]{\textbf{Pagamenti}} &
Nome & Varchar (100) & 100 & 1 kB \\ \cline{2-5}
& Totale & & & 1.1 kB \\ \cline{2-5}
& Dati + Block Header & & & 1.2 kB \\ \cline{2-5}
\end{tabular}
\end{document}
Drawbacks here are the tables don't break across the page boundary (unless you use something like longtable or ltxtable).
Use boxes/overlapping/phantoms to adjust the appropriate entries so they align:
\documentclass{article}
\begin{document}
\leavevmode\rlap{\textbf{Articoli}}%
\phantom{\textbf{Pagamenti}}
\begin{tabular}{ | l | l | l | p{3cm} |}
\hline
\textbf{Attributo} & \textbf{Tipo} & \textbf{Byte} & \textbf{Complessivo} \\
\hline
& & & 1500 occorrenze \\ \hline
Codice & Char(7) & 7 & 10,7 kB \\ \hline
Nome & Varchar (100) & 100 & 150 kB \\ \hline
Marca & Varchar (100) & 100 & 150 kB \\ \hline
Prezzo & Money & 8 & 12,2 kB \\ \hline
Disponibile & Integer & 4 & 6.2 kB \\ \hline
Soglia & Integer & 4 & 6.2 kB \\ \hline
Reparto & Char (4) & 4 & 6.2 kB \\ \hline
Totale & & & 321 kB \\ \hline
Dati + Block Header & & & 322 kB \\ \hline
\end{tabular}
\bigskip
\leavevmode\rlap{\textbf{Reparti}}%
\phantom{\textbf{Pagamenti}}
\begin{tabular}{ | l | l | l | p{3cm} |}
\hline
\textbf{Attributo} & \textbf{Tipo} & \textbf{Byte} & \textbf{Complessivo} \\
\hline
& & & 120 occorrenze \\ \hline
Codice & Char(4) & 4 & 0,5 kB \\ \hline
Nome & Varchar (100) & 100 & 12.1 kB \\ \hline
Sezione & Char(4) & 4 & 0.5 kB \\ \hline
Totale & & & 12.2 kB \\ \hline
Dati + Block Header & & & 12.3 kB \\ \hline
\end{tabular}
\bigskip
\textbf{Pagamenti}
\begin{tabular}{ | l | l | l | p{3cm} |}
\hline
\textbf{Attributo} & \textbf{Tipo} & \textbf{Byte} & \textbf{Complessivo} \\
\hline
& & & 10 occorrenze \\ \hline
Codice & Char(4) & 4 & 0,1 kB \\ \hline
Nome & Varchar (100) & 100 & 1 kB \\ \hline
Totale & & & 1.1 kB \\ \hline
Dati + Block Header & & & 1.2 kB \\ \hline
\end{tabular}
\end{document}
Note the use of % at the end of the overlapping line; this is to avoid a spurious space. See What is the use of percent signs (%) at the end of lines?
Here is another presentation using booktabs and siunitx, foregoing the excessive use of horizontal rules and no vertical rules at all:
\documentclass{article}
\usepackage{booktabs,siunitx,etoolbox}
\newcommand{\tipochar}[1]{Char~(#1)}
\newcommand{\tipovarchar}[1]{Varchar~(#1)}
\newcommand{\tipomoney}{Money}
\newcommand{\tipointeger}{Integer}
\sisetup{%
round-integer-to-decimal,
round-precision = 1,
round-mode = places
}%
\robustify\bfseries
\begin{document}
\begin{tabular}{
>{\hspace*{1em}\itshape}l
l
S[table-format = 3.1]
S[table-format = 3.2]}
\toprule
\multicolumn{1}{l}{\bfseries Attributo} &
\bfseries Tipo &
\multicolumn{1}{l}{\bfseries Byte} &
\multicolumn{1}{l}{\bfseries Complessivo [kB]} \\
\midrule
\multicolumn{1}{l}{Articoli} & & & \multicolumn{1}{c}{\num{1500} occorrenze} \\
Codice & \tipochar{7} & 7 & 10.7 \\
Nome & \tipovarchar{100} & 100 & 150 \\
Marca & \tipovarchar{100} & 100 & 150 \\
Prezzo & \tipomoney & 8 & 12.2 \\
Disponibile & \tipointeger & 4 & 6.2 \\
Soglia & \tipointeger & 4 & 6.2 \\
Reparto & \tipochar{4} & 4 & 6.2 \\
Totale & & & 321 \\
Dati + Block Header & & & 322 \\[.5\normalbaselineskip]
\multicolumn{1}{l}{Reparti} & & & \multicolumn{1}{c}{\num{120} occorrenze} \\
Codice & \tipochar{4} & 4 & 0.5 \\
Nome & \tipovarchar{100} & 100 & 12.1 \\
Sezione & \tipochar{4} & 4 & 0.5 \\
Totale & & & 12.2 \\
Dati + Block Header & & & 12.3 \\[.5\normalbaselineskip]
\multicolumn{1}{l}{Pagamenti} & & & \multicolumn{1}{c}{\num{10} occorrenze} \\
Codice & \tipochar{4} & 4 & 0.1 \\
Nome & \tipovarchar{100} & 100 & 1 \\
Totale & & & 1.1 \\
Dati + Block Header & & & 1.2 \\
\bottomrule
\end{tabular}
\end{document}

Related

How to show a big table in IEEE conference clearly

I have a table in latex. here is the code for it. My problem is the table is huge and and the content of it is not clear. My paper texts are shown in two columns and the table locates in one of those columns. I appreciate if anyone can help me how can I make the table content more clear for example is it good to expand it in a new page?
\begin{table}[]
\centering
\caption{Comparing accuracy of }
\label{table1}
\resizebox{\columnwidth}{!}{%
\begin{tabular}{|cccccccccccc|}
\hline
\rowcolor[HTML]{C0C0C0}
\multicolumn{12}{|c|}{\cellcolor[HTML]{C0C0C0}out\_1} \\ \hline
\rowcolor[HTML]{00D2CB}
\multicolumn{1}{|c|}{\cellcolor[HTML]{00D2CB}} & \multicolumn{1}{c|}{\cellcolor[HTML]{00D2CB}} & \multicolumn{5}{c|}{\cellcolor[HTML]{00D2CB}Accuracy result} & \multicolumn{5}{c|}{\cellcolor[HTML]{00D2CB}Precision result} \\ \hline
\rowcolor[HTML]{C0C0C0}
\multicolumn{1}{|c|}{\cellcolor[HTML]{C0C0C0}row} & \multicolumn{1}{c|}{\cellcolor[HTML]{C0C0C0}Train-Test percentage} & \multicolumn{1}{c|}{\cellcolor[HTML]{C0C0C0}TP} & \multicolumn{1}{c|}{\cellcolor[HTML]{C0C0C0}FP} & \multicolumn{1}{c|}{\cellcolor[HTML]{C0C0C0}FN} & \multicolumn{1}{c|}{\cellcolor[HTML]{C0C0C0}TN} & \multicolumn{1}{c|}{\cellcolor[HTML]{C0C0C0}Accuracy} & \multicolumn{1}{c|}{\cellcolor[HTML]{C0C0C0}TP} & \multicolumn{1}{c|}{\cellcolor[HTML]{C0C0C0}FP} & \multicolumn{1}{c|}{\cellcolor[HTML]{C0C0C0}FN} & \multicolumn{1}{c|}{\cellcolor[HTML]{C0C0C0}TN} & Accuracy \\ \hline
\multicolumn{1}{|c|}{1} & \multicolumn{1}{c|}{10-90} & \multicolumn{1}{c|}{17508} & \multicolumn{1}{c|}{5433} & \multicolumn{1}{c|}{8} & \multicolumn{1}{c|}{35961} & \multicolumn{1}{c|}{0.907638771} & \multicolumn{1}{c|}{18715} & \multicolumn{1}{c|}{4226} & \multicolumn{1}{c|}{8} & \multicolumn{1}{c|}{35961} & 0.928127652 \\ \hline
\multicolumn{1}{|c|}{2} & \multicolumn{1}{c|}{20-80} & \multicolumn{1}{c|}{17313} & \multicolumn{1}{c|}{5433} & \multicolumn{1}{c|}{8} & \multicolumn{1}{c|}{29610} & \multicolumn{1}{c|}{0.896092735} & \multicolumn{1}{c|}{18476} & \multicolumn{1}{c|}{4270} & \multicolumn{1}{c|}{8} & \multicolumn{1}{c|}{29610} & 0.918302651 \\ \hline
\multicolumn{1}{|c|}{3} & \multicolumn{1}{c|}{30-70} & \multicolumn{1}{c|}{17097} & \multicolumn{1}{c|}{5433} & \multicolumn{1}{c|}{8} & \multicolumn{1}{c|}{23281} & \multicolumn{1}{c|}{0.881250136} & \multicolumn{1}{c|}{18223} & \multicolumn{1}{c|}{4307} & \multicolumn{1}{c|}{8} & \multicolumn{1}{c|}{23281} & 0.905825094 \\ \hline
\multicolumn{1}{|c|}{4} & \multicolumn{1}{c|}{40-60} & \multicolumn{1}{c|}{16587} & \multicolumn{1}{c|}{5429} & \multicolumn{1}{c|}{3} & \multicolumn{1}{c|}{17256} & \multicolumn{1}{c|}{0.86171513} & \multicolumn{1}{c|}{17760} & \multicolumn{1}{c|}{1255} & \multicolumn{1}{c|}{3} & \multicolumn{1}{c|}{17256} & 0.891582217 \\ \hline
\multicolumn{1}{|c|}{5} & \multicolumn{1}{c|}{50-50} & \multicolumn{1}{c|}{16155} & \multicolumn{1}{c|}{5428} & \multicolumn{1}{c|}{3} & \multicolumn{1}{c|}{16942} & \multicolumn{1}{c|}{0.834056465} & \multicolumn{1}{c|}{17338} & \multicolumn{1}{c|}{4245} & \multicolumn{1}{c|}{3} & \multicolumn{1}{c|}{11142} & 0.870202884 \\ \hline
\multicolumn{1}{|c|}{6} & \multicolumn{1}{c|}{60-40} & \multicolumn{1}{c|}{15654} & \multicolumn{1}{c|}{5416} & \multicolumn{1}{c|}{3} & \multicolumn{1}{c|}{5109} & \multicolumn{1}{c|}{0.793025891} & \multicolumn{1}{c|}{16817} & \multicolumn{1}{c|}{4253} & \multicolumn{1}{c|}{3} & \multicolumn{1}{c|}{5109} & 0.837445573 \\ \hline
\multicolumn{1}{|c|}{7} & \multicolumn{1}{c|}{70-30} & \multicolumn{1}{c|}{14240} & \multicolumn{1}{c|}{8977} & \multicolumn{1}{c|}{0} & \multicolumn{1}{c|}{0} & \multicolumn{1}{c|}{0.725161685} & \multicolumn{1}{c|}{15373} & \multicolumn{1}{c|}{4264} & \multicolumn{1}{c|}{0} & \multicolumn{1}{c|}{0} & 0.782858889 \\ \hline
\multicolumn{1}{|c|}{8} & \multicolumn{1}{c|}{80-20} & \multicolumn{1}{c|}{9340} & \multicolumn{1}{c|}{3752} & \multicolumn{1}{c|}{0} & \multicolumn{1}{c|}{0} & \multicolumn{1}{c|}{0.713412771} & \multicolumn{1}{c|}{9502} & \multicolumn{1}{c|}{3950} & \multicolumn{1}{c|}{0} & \multicolumn{1}{c|}{0} & 0.72578676 \\ \hline
\multicolumn{1}{|c|}{9} & \multicolumn{1}{c|}{90-10} & \multicolumn{1}{c|}{4736} & \multicolumn{1}{c|}{1809} & \multicolumn{1}{c|}{0} & \multicolumn{1}{c|}{0} & \multicolumn{1}{c|}{0.723605806} & \multicolumn{1}{c|}{4766} & \multicolumn{1}{c|}{1223} & \multicolumn{1}{c|}{0} & \multicolumn{1}{c|}{0} & 0.722993452 \\ \hline
\end{tabular}%
}
\end{table}
The table in the paper is shown like the following:
I edit my code according to what you have written,
\usepackage{array}
\usepackage{booktabs}
\usepackage{threeparttable}
\usepackage{siunitx}
\usepackage{float}
\usepackage[margin=1in]{geometry}
\sisetup{
table-format=1.3,
round-mode = places,
round-precision = 3,
}
\begin{table*}[ht]
\renewcommand*{\arraystretch}{1.1}
\centering
\begin{threeparttable}
\caption{Comparing accuracy}\label{tab:table}
\begin{tabular}{c #{\hspace{12pt}} *5{c} S #{\hspace{12pt}} *4{c} S #{\hspace{6pt}}}
\toprule
\multicolumn{12}{c}{out\_1} \\
\cmidrule(lr){1-12}
& & \multicolumn{5}{c}{Accuracy result}
& \multicolumn{5}{c}{Precision result} \\
\cmidrule(lr){3-7}\cmidrule(r){8-12}
& TTP\tnote{1} & TP & FP & FN & TN & {ACC\tnote{3}} & TP & FP & FN & TN & {ACC\tnote{3}} \\
\midrule
1 & 10-90 & 17508 & 5433 & 8 & 35961 & 0.907638771 & 18715 & 4226 & 8 & 35961 & 0.928127652 \\
2 & 20-80 & 17313 & 5433 & 8 & 29610 & 0.896092735 & 18476 & 4270 & 8 & 29610 & 0.918302651 \\
3 & 30-70 & 17097 & 5433 & 8 & 23281 & 0.881250136 & 18223 & 4307 & 8 & 23281 & 0.905825094 \\
4 & 40-60 & 16587 & 5428 & 3 & 17256 & 0.86171513 & 17760 & 4255 & 3 & 17256 & 0.891582217 \\
5 & 50-50 & 16155 & 5428 & 3 & 11142 & 0.834056465 & 17338 & 4245 & 3 & 11142 & 0.870202884 \\
6 & 60-40 & 15654 & 5416 & 3 & 5109 & 0.793025743 & 16817 & 4253 & 3 & 5109 & 0.837445573 \\
7 & 70-30 & 14240 & 5397 & 0 & 0 & 0.725161685 & 15373 & 4264 & 0 & 0 & 0.782858889 \\
8 & 80-20 & 9340 & 3752 & 0 & 0 & 0.713412771 & 9502 & 3590 & 0 & 0 & 0.72578674 \\
9 & 90-10 & 4736 & 1809 & 0 & 0 & 0.723605806 & 4732 & 1813 & 0 & 0 & 0.722994652 \\
\bottomrule
\end{tabular}
\par\tnote{1} Test Train Percentage
\par\tnote{2} Accuracy
\end{threeparttable}
\end{table*}
\end{document}
You just have to make sure tables aren't too wordy; "the long" column names and insane number of decimal places are mostly the culprits!
I managed to fit the table within a page of a regular two column document. However, I changed some names to acronyms and added annotation to explain what they represent. I also reduced accuracy to 3 decimal places (I don't think you need more than 2).
There are a few additional packages in the code
siunitx to round some numbers
threeparttable to split the table into three parts: a caption, the main table, footnotes (*)
booktabs for much better rules (**).
* If you insist on using colours, then you will have to get back to regular \hline due to gaps between background colours and rules defined by booktabs. I think a well designed table doesn't need colours
** The caption width will be reduced to the width of your table, which IMO has much better effect; move caption outside the threeparttable if you prefer captions to have the full page width .
Here's the result with dummy texts
and code
\documentclass[twocolumn]{article}
\usepackage{array}
\usepackage{amsmath}
\usepackage{booktabs}
\usepackage{threeparttable}
\usepackage{siunitx}
\sisetup{
table-format=1.3,
round-mode = places,
round-precision = 3,
}
\usepackage{kantlipsum}
\pagestyle{empty}
\begin{document}
\section{One}
\kant[1-2]
\begin{table*}
\renewcommand*{\arraystretch}{1.1}
\centering
\begin{threeparttable}
\caption{Comparing accuracy}\label{tab:table}
\begin{tabular}{c #{\hspace{12pt}} *5{c} S #{\hspace{12pt}} *4{c} S #{\hspace{6pt}}}
\toprule
\multicolumn{12}{c}{out\_1} \\
\cmidrule(lr){1-12}
& & \multicolumn{5}{c}{Accuracy result}
& \multicolumn{5}{c}{Precision result} \\
\cmidrule(lr){3-7}\cmidrule(r){8-12}
& TTP\tnote{1} & TP & FP & FN & TN & {ACC\tnote{2}} & TP & FP & FN & TN & {ACC\tnote{2}} \\
\midrule
1 & 10-90 & 17508 & 5433 & 8 & 35961 & 0.907638771 & 18715 & 4226 & 8 & 35961 & 0.928127652 \\
2 & 20-80 & 17313 & 5433 & 8 & 29610 & 0.896092735 & 18476 & 4270 & 8 & 29610 & 0.918302651 \\
3 & 30-70 & 17097 & 5433 & 8 & 23281 & 0.881250136 & 18223 & 4307 & 8 & 23281 & 0.905825094 \\
4 & 40-60 & 16587 & 5428 & 3 & 17256 & 0.86171513 & 17760 & 4255 & 3 & 17256 & 0.891582217 \\
5 & 50-50 & 16155 & 5428 & 3 & 11142 & 0.834056465 & 17338 & 4245 & 3 & 11142 & 0.870202884 \\
6 & 60-40 & 15654 & 5416 & 3 & 5109 & 0.793025743 & 16817 & 4253 & 3 & 5109 & 0.837445573 \\
7 & 70-30 & 14240 & 5397 & 0 & 0 & 0.725161685 & 15373 & 4264 & 0 & 0 & 0.782858889 \\
8 & 80-20 & 9340 & 3752 & 0 & 0 & 0.713412771 & 9502 & 3590 & 0 & 0 & 0.72578674 \\
9 & 90-10 & 4736 & 1809 & 0 & 0 & 0.723605806 & 4732 & 1813 & 0 & 0 & 0.722994652 \\
\bottomrule
\end{tabular}
\par\tnote{1} Test Train Percentage
\par\tnote{2} Accuracy
\end{threeparttable}
\end{table*}
\kant[3-5]
\section{Two}
\kant[1-2]
\end{document}
Update
In order to achieve top alignment of a float on a single empty page, add the following to your preamble
\makeatletter
\setlength\#dblfptop{0pt}
\makeatother

Latex - How can I use minipage inside longtable?

I have a table that I would like to split over pages, but I can't seem to figure out how I can do it with my current lay-out or commands that I use.
At this time, I used landscape and minipage so that it would fit on one page:
\documentclass[11pt]{article}
\usepackage{pdflscape}
\usepackage{longtable}
\usepackage{lipsum}
\usepackage{bm}
\usepackage{makecell}
\begin{document}
\begin{landscape}
\centering
\begin{table}[!htb]
\caption{\label{CH2_tab:P80L} Empirical power from the simulation study with the indicators having an overall reliability of 80\% and a linear relationship with the latent variable. The highest power per setting is indicated in bold.}
\renewcommand{\arraystretch}{1.5}
\begin{minipage}{.5\linewidth}
\centering
\medskip
\scalebox{0.45}{
\begin{tabular}{rcccccc}
\hline
& \multicolumn{6}{c}{\textbf{Linear}} \\
\cline{2-7}
& \makecell{\textbf{WMW -- max rel} } & \makecell{\textbf{WMW -- mean }} & \makecell{\textbf{\textit{t} test -- max rel }} & \makecell{\textbf{\textit{t} test -- mean }} & \makecell{\textbf{SEM} } & \makecell{\textbf{SEM -- corrected}} \\
\hline
\multicolumn{7}{l}{$\mathcal{N}(0,1)$} \\
\multicolumn{7}{l}{\bm{$m=n=15$}} \\
\hline
Setting 1 & 29.7 & 31.0 & \textbf{33.2} & 32.9 & 32.4 & 32.1 \\
Setting 2 & 28.4 & 29.2 & 30.7 & \textbf{31.3} & 30.0 & 30.3 \\
Setting 3 & 29.5 & 29.3 & 31.8 & \textbf{32.3} & 32.0 & 31.9 \\
Setting 4 & 25.8 & 26.2 & 28.5 & 27.4 & \textbf{29.4} & 28.6 \\
\hline
\multicolumn{7}{l}{\bm{$m=n=50$}} \\
\hline
Setting 1 & 78.7 & 79.1 & 81.7 & 81.4 & \textbf{83.2} & 83.1 \\
Setting 2 & 79.5 & 78.8 & 81.0 & 80.4 & 82.0 & \textbf{82.1} \\
Setting 3 & 79.2 & 79.9 & 81.2 & 81.8 & \textbf{82.2} & 82.0 \\
Setting 4 & 74.8 & 72.3 & 77.6 & 74.4 & \textbf{80.0} & \textbf{80.0} \\
\hline
\multicolumn{7}{l}{\bm{$m=n=100$}} \\
\hline
Setting 1 & 98.2 & 98.1 & 98.5 & 98.6 & \textbf{98.7} & \textbf{98.7} \\
Setting 2 & 97.7 & 97.7 & 98.2 & \textbf{98.3} & \textbf{98.3} & \textbf{98.3} \\
Setting 3 & 97.6 & 97.5 & 98.1 & \textbf{98.2} & \textbf{98.2} & \textbf{98.2} \\
Setting 4 & 97.4 & 95.1 & 98.1 & 95.8 & 98.1 & \textbf{98.2} \\
\hline
\multicolumn{7}{l}{$t_5$} \\
\multicolumn{7}{l}{\bm{$m=n=15$}} \\
\hline
Setting 1 & 23.5 & 23.9 & 24.2 & 24.1 & \textbf{24.4} & 23.9 \\
Setting 2 & 24.0 & \textbf{24.1} & 23.1 & 22.6 & 22.0 & 22.2 \\
Setting 3 & 23.7 & \textbf{23.8} & 22.4 & 23.1 & 22.5 & 23.3 \\
Setting 4 & 22.1 & 22.4 & 22.2 & 22.4 & 22.4 & \textbf{23.5} \\
\hline
\multicolumn{7}{l}{\bm{$m=n=50$}} \\
\hline
Setting 1 & 65.8 & \textbf{66.1} & 60.8 & 60.9 & 61.8 & 61.4 \\
Setting 2 & \textbf{68.7} & \textbf{68.7} & 62.2 & 62.2 & 63.7 & 63.4 \\
Setting 3 & 67.3 & \textbf{67.6} & 61.1 & 61.4 & 62.7 & 62.2 \\
Setting 4 & \textbf{63.9} & 58.4 & 57.6 & 53.7 & 60.2 & 60.0 \\
\hline
\multicolumn{7}{l}{\bm{$m=n=100$}} \\
\hline
Setting 1 & 92.3 & \textbf{92.4} & 87.6 & 87.6 & 88.0 & 88.1 \\
Setting 2 & \textbf{91.7} & \textbf{91.7} & 87.0 & 87.4 & 87.9 & 87.8 \\
Setting 3 & 93.2 & \textbf{93.4} & 88.9 & 88.7 & 89.4 & 89.5 \\
Setting 4 & \textbf{90.6} & 86.8 & 85.7 & 83.4 & 87.4 & 87.4 \\
\hline
\hline
\end{tabular}
}
\end{minipage}\hfill
\begin{minipage}{.5\linewidth}
\centering
\medskip
\scalebox{0.45}{
\begin{tabular}{rcccccc}
\hline
& \multicolumn{6}{c}{\textbf{Linear}} \\
\cline{2-7}
& \makecell{\textbf{WMW -- max rel} } & \makecell{\textbf{WMW -- mean }} & \makecell{\textbf{\textit{t} test -- max rel }} & \makecell{\textbf{\textit{t} test -- mean }} & \makecell{\textbf{SEM} } & \makecell{\textbf{SEM -- corrected}} \\
\hline
\multicolumn{7}{l}{$Laplace(0,1.25)$} \\
\multicolumn{7}{l}{\bm{$m=n=15$}} \\
\hline
Setting 1 & 21.5 & \textbf{22.3} & 19.6 & 20.4 & 19.3 & 19.0 \\
Setting 2 & \textbf{21.9} & 21.4 & 21.0 & 21.1 & 19.8 & 21.0 \\
Setting 3 & 22.0 & \textbf{22.5} & 20.6 & 20.3 & 20.1 & 20.3 \\
Setting 4 & 17.3 & \textbf{19.8} & 16.5 & 18.8 & 19.4 & 19.3 \\
\hline
\multicolumn{7}{l}{\bm{$m=n=50$}} \\
\hline
Setting 1 & 61.8 & \textbf{62.0} & 53.2 & 53.2 & 55.0 & 54.6 \\
Setting 2 & 62.2 & \textbf{63.2} & 52.7 & 53.3 & 54.5 & 53.8 \\
Setting 3 & 64.6 & \textbf{66.0} & 52.9 & 52.8 & 54.7 & 54.2 \\
Setting 4 & \textbf{58.9} & 56.9 & 51.7 & 49.8 & 56.0 & 56.1 \\
\hline
\multicolumn{7}{l}{\bm{$m=n=100$}} \\
\hline
Setting 1 & \textbf{92.3} & 92.2 & 83.2 & 82.9 & 83.5 & 83.4 \\
Setting 2 & \textbf{88.1} & 87.9 & 77.7 & 77.5 & 78.2 & 78.1 \\
Setting 3 & \textbf{91.0} & 90.7 & 82.6 & 82.9 & 82.9 & 83.0 \\
Setting 4 & \textbf{85.5} & 80.4 & 77.7 & 74.2 & 79.3 & 79.3 \\
\hline
\multicolumn{7}{l}{Exp} \\
\multicolumn{7}{l}{\bm{$m=n=15$}} \\
\hline
Setting 1 & 22.2 & \textbf{23.1} & 18.1 & 18.2 & 18.7 & 18.3 \\
Setting 2 & 19.7 & \textbf{19.8} & 17.0 & 17.5 & 17.2 & 17.5 \\
Setting 3 & 19.4 & \textbf{20.2} & 16.9 & 17.6 & 16.9 & 17.0 \\
Setting 4 & 15.7 & \textbf{16.0} & 13.4 & 14.9 & 14.8 & 14.9 \\
\hline
\multicolumn{7}{l}{\bm{$m=n=50$}} \\
\hline
Setting 1 & 61.9 & \textbf{62.0} & 40.8 & 41.8 & 42.6 & 42.6 \\
Setting 2 & 56.2 & \textbf{57.6} & 38.0 & 38.2 & 39.9 & 39.3 \\
Setting 3 & 63.0 & \textbf{63.5} & 42.6 & 42.6 & 44.9 & 44.8 \\
Setting 4 & \textbf{50.1} & 45.0 & 36.9 & 36.7 & 40.6 & 40.4 \\
\hline
\multicolumn{7}{l}{\bm{$m=n=100$}} \\
\hline
Setting 1 & 86.7 & \textbf{87.2} & 67.2 & 67.5 & 67.7 & 67.8 \\
Setting 2 & 85.4 & \textbf{85.6} & 65.5 & 66.0 & 66.6 & 66.8 \\
Setting 3 & 88.2 & \textbf{88.4} & 66.4 & 66.3 & 67.3 & 67.6 \\
Setting 4 & \textbf{83.5} & 76.1 & 65.2 & 61.1 & 66.9 & 67.7 \\
\hline
\hline
\end{tabular}
}
\end{minipage}\hfill
\end{table}
\end{landscape}
\end{document}
However, I would like to split this table nicely over multiple pages (and thus by using e.g. longtable), in such way that on one page, I have the results for the N(0,1) and Laplace distribution (side by side), and then on the second page the t_5 and Exp distribution (side by side), i.e. split each table over 2 pages, but have 2 tables side by side by using minipage inside long table.
I know I could converge them and just make one large table and then use long table, however, I would really like not to rewrite the code (since I have 10 more tables like this). Does someone know how I could do this? I tried several ways, but none of them produce the result I am looking for.
Thank you for all your feedback!
Heidelinde

Group only some columns in latex

I want to do something like this:
It has two headings: the upper one I'm done with but now I want to add a lower heading for only some columns.
Is there a way to add such a heading in latex?
My attempt:
\begin{tabular}{lcccccccc}\hline \hline
& Whole world & Base sample & Whole world & Base sample & Whole world & Base sample & Whole world & Base sample \\
& (1) & (2) & (3) & (4) & (5) & (6) & (7) & (8) \\ \hline \\
& & & & & & & & & \\
\multicolumn{6}{c}{Dependent variable is log GDP per capita in 1995 } \\
& & & & & & & & \\
The following uses the eqparbox package to set the integer and decimal part of each number wrapped inside a \fmtnum
\documentclass{article}
\usepackage{booktabs,makecell,eqparbox}
\newcommand{\mc}{\multicolumn{1}{c}}
\makeatletter
\newcommand{\fmtnum}[1]{\#fmtnum#1\relax}
\def\#fmtnum#1.#2\relax{\eqmakebox[int][r]{$#1.$}\eqmakebox[dec][l]{$#2$}}
\makeatother
\begin{document}
\noindent
\begin{tabular}{ *{8}{c} }
\toprule
\makecell{Whole \\ world \\ (1)} &
\makecell{Base \\ sample \\ (2)} &
\makecell{Whole \\ world \\ (3)} &
\makecell{Base \\ sample \\ (4)} &
\makecell{Whole \\ world \\ (5)} &
\makecell{Base \\ sample \\ (6)} &
\makecell{Whole \\ world \\ (7)} &
\makecell{Base \\ sample \\ (8)} \\
\midrule
\multicolumn{6}{c}{\small Dependent variable is log GDP per capita in 1995} &
\multicolumn{2}{c}{\small \makecell[b]{Dependent variable \\ is log output per \\ worker in 1998}} \\
\cmidrule(lr){1-6}\cmidrule{7-8}
\fmtnum{ 0.54 } & \fmtnum{ 0.52 } & \fmtnum{ 0.47 } & \fmtnum{ 0.43 } & \fmtnum{ 0.47 } & \fmtnum{ 0.41 } & \fmtnum{ 0.45 } & \fmtnum{ 0.46 } \\
\fmtnum{(0.04)} & \fmtnum{(0.06)} & \fmtnum{(0.06)} & \fmtnum{(0.05)} & \fmtnum{(0.06)} & \fmtnum{(0.06)} & \fmtnum{(0.04)} & \fmtnum{(0.06)} \\
\addlinespace
& & \fmtnum{ 0.89 } & \fmtnum{ 0.37 } & \fmtnum{ 1.60 } & \fmtnum{ 0.92 } \\
& & \fmtnum{(0.49)} & \fmtnum{(0.51)} & \fmtnum{(0.70)} & \fmtnum{(0.63)} \\
& & & \fmtnum{-0.62 } & & \fmtnum{-0.60 } \\
& & & \fmtnum{(0.19)} & & \fmtnum{(0.23)} \\
& & & \fmtnum{-1.00 } & & \fmtnum{-0.90 } \\
& & & \fmtnum{(0.15)} & & \fmtnum{(0.17)} \\
& & & \fmtnum{-0.25 } & & \fmtnum{-0.04 } \\
& & & \fmtnum{(0.20)} & & \fmtnum{(0.32)} \\
\fmtnum{ 0.62 } & \fmtnum{ 0.54 } & \fmtnum{ 0.63 } & \fmtnum{ 0.73 } & \fmtnum{ 0.56 } & \fmtnum{ 0.69 } & \fmtnum{ 0.55 } & \fmtnum{ 0.49 } \\
\mc{110} & \mc{64} & \mc{110} & \mc{110} & \mc{64} & \mc{64} & \mc{108} & \mc{61} \\
\bottomrule
\end{tabular}
\end{document}
While it is a bit cumbersome, there is very little uniformity across the table, with mixtures of decimal values using parentheses and negative numbers, numbers without decimal parts and also headers that are wider than their column constituents (columns 7-8).
The above code requires at least 2 compilations with every change in the maximum width of a number's integer or decimal part.
You can streamline the input a little using collcell:
\documentclass{article}
\usepackage{booktabs,makecell,eqparbox,collcell}
\newcommand{\mc}{\multicolumn{1}{c}}
\makeatletter
\newcommand{\fmtnum}[1]{\if\relax\detokenize{#1}\relax\else\#fmtnum#1\relax\fi}
\def\#fmtnum#1.#2\relax{\eqmakebox[int][r]{$#1.$}\eqmakebox[dec][l]{$#2$}}
\makeatother
\begin{document}
\noindent
\begin{tabular}{ *{8}{>{\collectcell\fmtnum}c<{\endcollectcell}} }
\toprule
\mc{\makecell{Whole \\ world \\ (1)}} &
\mc{\makecell{Base \\ sample \\ (2)}} &
\mc{\makecell{Whole \\ world \\ (3)}} &
\mc{\makecell{Base \\ sample \\ (4)}} &
\mc{\makecell{Whole \\ world \\ (5)}} &
\mc{\makecell{Base \\ sample \\ (6)}} &
\mc{\makecell{Whole \\ world \\ (7)}} &
\mc{\makecell{Base \\ sample \\ (8)}} \\
\midrule
\multicolumn{6}{c}{\small Dependent variable is log GDP per capita in 1995} &
\multicolumn{2}{c}{\small \makecell[b]{Dependent variable \\ is log output per \\ worker in 1998}} \\
\cmidrule(lr){1-6}\cmidrule{7-8}
0.54 & 0.52 & 0.47 & 0.43 & 0.47 & 0.41 & 0.45 & 0.46 \\
(0.04) & (0.06) & (0.06) & (0.05) & (0.06) & (0.06) & (0.04) & (0.06) \\
\addlinespace
& & 0.89 & 0.37 & 1.60 & 0.92 \\
& & (0.49) & (0.51) & (0.70) & (0.63) \\
& & & -0.62 & & -0.60 \\
& & & (0.19) & & (0.23) \\
& & & -1.00 & & -0.90 \\
& & & (0.15) & & (0.17) \\
& & & -0.25 & & -0.04 \\
& & & (0.20) & & (0.32) \\
0.62 & 0.54 & 0.63 & 0.73 & 0.56 & 0.69 & 0.55 & 0.49 \\
\mc{110} & \mc{64} & \mc{110} & \mc{110} & \mc{64} & \mc{64} & \mc{108} & \mc{61} \\
\bottomrule
\end{tabular}
\end{document}

how to draw this table

I'm trying to draw the table of the image, but I can not find the way to do it with latex.
\begin{tabular}{|C{1cm}|C{1cm}|C{1cm}|C{1cm}|C{1cm}|C{1cm}|C{1cm}}
\hline
Tipo RA & \multicolumn{2}{c|}{Area [m$^2$]}& \multicolumn{2}{c|}{Volumen Semiesferico truncado} \\
1 &&&&&&\\ \hline
2 &&&&&&\\ \hline
3 &&&&&&\\ \hline
4 &&&&&&\\ \hline
5 &&&&&&\\ \hline
6 &&&&&&\\ \hline
7 &&&&&&\\ \hline
\end{tabular}
I'd suggest using booktabs:
\documentclass{article}
\usepackage{booktabs,siunitx,makecell}
\newcommand{\pz}{\phantom{0}}
\sisetup{
group-minimum-digits = 3
}
\begin{document}
\noindent
\begin{tabular}{ l *{6}{c} }
\toprule
& \multicolumn{4}{c}{Area [$m^2$]} & \\
\cmidrule{2-5}
& \multicolumn{2}{c}{Circular} & \multicolumn{2}{c}{El\'{\i}ptica} &
\multicolumn{2}{c}{\smash{\makecell[cb]{Volumen Semiesf\'erico \\ truncado [$m^3$]}}} \\
\cmidrule(lr){2-3} \cmidrule(lr){4-5} \cmidrule(lr){6-7}
Tipo RA & Rango & Promedio & Rango & Promedio & Rango & Promedio \\
\midrule
ALTA & \num{20866}--\num{28983} & \num{24446} & \num{13354}--\num{18549} & \num{15645} & \num{589840}--\num{1201636} & \num{883786} \\
MEDIA & \num{16634}--\num{27254} & \num{20241} & \num{12476}--\num{20440} & \num{15180} & \num{539605}--\num{1131633} & \num{730582} \\
BAJA & \pz\num{3822}--\num{25577} & \num{16097} & \pz\num{3407}--\num{22735} & \num{14307} & \pz\num{75664}--\num{1063784} & \num{647366} \\
\bottomrule
\end{tabular}
\end{document}
In general, there is no need for vertical rules in a tabular, as the columnar display of information supports horizontal separation naturally.
Creating tables directly in LaTeX is not an easy task, I suggest you use tools that allow you to create tables for latex online such as: https://www.tablesgenerator.com/
Please add the following required packages to your document preamble:
\usepackage{multirow,multicol, makecell, booktabs}
\begin{tabular}{*{7}{c}}
\toprule
& \multicolumn{4}{c}{\smash{\makecell[c]{Area [$m^2$]}}}
& \multicolumn{2}{c}{\smash{\makecell[c]{Volumen Semiesférico \\ truncado [$m^3$]}}}\\
\cline{2-5}
& \multicolumn{2}{c}{Circular} & \multicolumn{2}{c}{Eliptica} & \\
\cline{2-7}
Tipo RA & Rango & Promedio & Rango & Promedio & Rango & Promedio \\
\midrule
ALTA & 20866-28983 & 24464 & 20866-28983 & 24464 & 20866-28983 & 24464 \\
MEDIA & 20866-28983 & 24464 & 20866-28983 & 24464 & 20866-28983 & 24464 \\
BAJA & 20866-28983 & 24464 & 20866-28983 & 24464 & 20866-28983 & 24464 \\
\bottomrule
\end{tabular}
Just a no-booktabs sketch, to reproduce your table as similar as possible. Using booktabs is of course recommended for a readability concept that holds everywhere but the first sight on the table would then change very much.
\documentclass{article}
\usepackage{multirow}
\begin{document}
Text
\begin{table}[ht]
{\sffamily%
\begin{tabular}{*{7}{c|}}
% be careful when nesting \multicolumn and \multirow
\cline{2-7}
\multirow{2}{*}{ } & \multicolumn{4}{|c|}{Area [$m^2$]} & \multicolumn{2}{c|}{\multirow{2}{*}{\shortstack[c]{Volumen Semiesf\'erico\\ truncado [$m^3$]}}}\\
\cline{2-5}
& \multicolumn{2}{c|}{Circular} & \multicolumn{2}{c|}{El\'{\i}ptica} & \multicolumn{1}{c}{} & \\
% second part below is standard
\hline
\multicolumn{1}{|c|}{Tipo RA} & Rango & Promedio & Rango & Promedio & Rango & Promedio\\
\hline
\multicolumn{1}{|c|}{ALTA} & 2 - 2 & 3 & 4 - 4 & 5 & 6 - 6 & 7\\
\hline
\multicolumn{1}{|c|}{MEDIA} & 2 - 2 & 3 & 4 - 4 & 5 & 6 - 6 & 7\\
\hline
\multicolumn{1}{|c|}{BAJA} & 2 - 2 & 3 & 4 - 4 & 5 & 6 - 6 & 7\\
\hline
\end{tabular}
}%
\end{table}
Text.
\end{document}
The output of this code is:
Alignments, line breaks and spacing may be considerably improved, also depending on your time and objectives.

How to combine 'longtable' + 'tabularX' (2-page table with long headings)

'tabularx' solves the problem of long headers (does not fit otherwise in width). 'longtable' solves the problem of table length (does not fit in length). But how to solve both problems?
\begin{tabularx}{\textwidth}{|X|X|X|X|X|}
\hline
Район & Количество заявок & Количество заявок на тыс. человек & Место по количеству заявок & Место по количеству заявок на тыс. человек \\
\hline
Невский & 1185 & 2.28 & 1 & 1 \\
\hline
Фрунзен-ский & 655 & 1.63 & 2 & 3 \\
\hline
Примор-ский & 559 & 0.99 & 3 & 8 \\
\hline
Калинин-ский & 458 & 0.85 & 5 & 9 \\
\hline
Красносель-ский & 284 & 0.74 & 6 & 11 \\
\hline
Василеос-тровский & 213 & 1.02 & 9 & 7 \\
\hline
Кировский & 275 & 0.82 & 7 & 10 \\
\hline
Централь-ный & 231 & 1.04 & 8 & 6 \\
\hline
Пушкин-ский & 472 & 2.27 & 4 & 2 \\
\hline
Красногвар-дейский & 132 & 0.37 & 12 & 16 \\
\hline
Московский & 153 & 0.44 & 11 & 14 \\
\hline
Выборгский & 182 & 0.36 & 10 & 17 \\
\hline
Петрог-радский & 91 & 0.67 & 14 & 12 \\
\hline
Адмирал-тейский & 68 & 0.42 & 15 & 15 \\
\hline
Петрод-ворцовый & 65 & 0.46 & 16 & 13 \\
\hline
Курортный & 100 & 1.30 & 13 & 5 \\
\hline
Кронштад-ский & 60 & 1.36 & 17 & 4 \\
\hline
Колпинский & 55 & 0.29 & 18 & 18 \\
\hline
\end{tabularx}
\begin{longtable}{|c|c|c|c|c|}
\caption{Заголовок большой таблицы.}\\
\hline
\textbf{Район} & \textbf{кол-во заявок} & \textbf{кол-во заявок на тыс. чел.} & \textbf{место по кол-ву заявок} \textbf{место по кол-ву заявок на тыс. чел.} \\ \hline
\endfirsthead
\hline
RND1 & RND2 & RND3 & RND4 \\ \hline
\endhead
\hline
\multicolumn{4}{r}{продолжение следует\ldots} \
\endfoot
\hline
\endlastfoot
\hline
Невский & 911 & 1.75 & 1 & 6 \\
\hline
Фрунзен-ский & 722 & 1.80 & 3 & 5 \\
\hline
Примор-ский & 503 & 0.89 & 7 & 10 \\
\hline
Калинин-ский & 251 & 0.47 & 11 & 13-14 \\
\hline
Красносель-ский & 499 & 1.30 & 8 & 8 \\
\hline
Василеос-тровский & 614 & 2.94 & 4 & 2 \\
\hline
Кировский & 396 & 1.18 & 10 & 9 \\
\hline
Централь-ный & 498 & 2.24 & 9 & 4 \\
\hline
Пушкинс-кий & 155 & 0.74 & 12 & 11 \\
\hline
Красногвар-дейский & 598 & 1.67 & 5 & 7 \\
\hline
Московский & 905 & 2.58 & 2 & 3 \\
\hline
Выборгский & 123 & 0.24 & 13 & 16 \\
\hline
Петрог-радский & 571 & 4.24 & 6 & 1 \\
\hline
Адмирал-тейский & 89 & 0.54 & 14 & 12 \\
\hline
Петрод-ворцовый & 55 & 0.39 & 15 & 15 \\
\hline
Курортный & 36 & 0.47 & 17 & 13-14 \\
\hline
Кронштад-ский & 10 & 0.23 & 18 & 17-18 \\
\hline
Колпинский & 44 & 0.23 & 16 & 17-18 \\
\hline
\end{longtable}
Please show how to make a table that will be moved to the next page, but fit in width

Resources