Manage the multiple row in Overleaf - latex

I have made a table with multiple columns and rows arguments like this
\begin{table}[H]
\centering
\begin{tabular}{lccccc}
\hline
\multirow{2}{*}{Aspects} & Probability & \multicolumn{4}{c}{Methods} \\
\cline{3-6}
& for DE Genes & Binomial Test & Tangram & stereoscope & BayesPrism\\
\hline
\multirow{3}{*}{AUC} & 0.3 & 0.867 & 0.029 & 0.074 & 0.992 \\
& 0.1 & 0.722 & 0.023 & 0.015 & 0.987\\
& 0.05 & 0.512 & 0.055 & 0.025 & 0.972\\
\hline
\multirow{3}{*}{Best Thresholds} & 0.3 & ${0.135$ & 0.029 & 0.072 & $1e-10$ \\
& 0.1 & ${1e-60$ & 0.026 & 0.065 & $1e-10$\\
& 0.05 & $1e-60$ & 0.033 & 0.069 & $1e-10$\\
\hline
\end{tabular}
\caption{The ROC Curve Summary for Data with 15 Clusters}
\label{15 cluster summary}
\end{table}
It will give the results like this
I want to make the entries "Best Thresholds" be in two rows (filling 3 rows arguments) so that the table is not too wide. Could anyone helps how to make it?

You can place the text in a \parbox:
\documentclass{article}
\usepackage{multirow}
\begin{document}
\begin{table}[htbp]
\centering
\begin{tabular}{lccccc}
\hline
\multirow{2}{*}{Aspects} & Probability & \multicolumn{4}{c}{Methods} \\
\cline{3-6}
& for DE Genes & Binomial Test & Tangram & stereoscope & BayesPrism\\
\hline
\multirow{3}{*}{AUC} & 0.3 & 0.867 & 0.029 & 0.074 & 0.992 \\
& 0.1 & 0.722 & 0.023 & 0.015 & 0.987\\
& 0.05 & 0.512 & 0.055 & 0.025 & 0.972\\
\hline
\multirow{3}{*}{\parbox{2cm}{\raggedright Best Thresholds}} & 0.3 & $0.135$ & 0.029 & 0.072 & $1e-10$ \\
& 0.1 & $1e-60$ & 0.026 & 0.065 & $1e-10$\\
& 0.05 & $1e-60$ & 0.033 & 0.069 & $1e-10$\\
\hline
\end{tabular}
\caption{The ROC Curve Summary for Data with 15 Clusters}
\label{15 cluster summary}
\end{table}
\end{document}

Related

Centering the latex table in the page

I have the following table in LaTeX, and although I have used the \centering in the code, it is not centred when knitted. In addition it extends more than the text width as shown in the figure below
\begin{table}[H]
\centering
\caption[mnodels summary]{Summary results of the models \label{tab:modelssummary}}
\begin{tabular}{cccccc}
\toprule
\multicolumn{6}{c}{~ \textbf{~~Models Performance }} \\
\hline
\textbf{Model} & \textbf{Residual Mean} & \textbf{Constant Variance} & \textbf{Autocorrelation} & \textbf{Adj. R-Squared} & \textbf{AIC} \\
\hline\hline
\textbf{Model 1} & OK & OK & YES & 0.83 & 4804.8 \\
\textbf{Model 2} & OK & OK & YES & 0.84 & 4569.5 \\
\textbf{Model 3} & OK & OK & YES & 0.83 & 4763.7 \\
\textbf{Model 4} & OK & OK & YES & 0.87 & 3760.5 \\
\textbf{Model 5} & OK & OK & YES & 0.86 & 3964.5 \\
\textbf{Model 6} & No & No & YES & 0.32 & 10879.7~ \\
\textbf{Model 7} & No & No & YES & 0.80 & 5434.2 \\
\bottomrule
\end{tabular}
\end{table}
and it will look like this:
How can I resolve this?
If you accept multi lines in headings and abbreviations, you can squeeze the table and even fit within the default latex page. Then, \centering will work
and the code
\documentclass{article}
\usepackage{booktabs}
\usepackage{caption}
\captionsetup[table]{position=top,skip=6pt}
\usepackage{makecell}
\usepackage{ragged2e} % Centering
\usepackage{siunitx} % S[...]
% Makecell - settings
\renewcommand\theadfont{\normalsize\normalfont\bfseries}
\renewcommand\theadalign{tc}
% Custom column types
\newcolumntype{C}{>{\Centering\bfseries}p{1.4cm}}
\newcolumntype{P}[1]{>{\Centering}p{#1}}
\begin{document}
\begin{table}[tbh]
\centering
\setlength\tabcolsep{0pt}
\caption[mnodels summary]{Summary results of the models}\label{tab:modelssummary}
\begin{tabular}{
C #{\hspace{1em}}
*4{P{1.25cm}}
#{\hspace{0.75em}}
S[group-minimum-digits=4,table-format=4.1]
}
\toprule
& \multicolumn{5}{c}{\textbf{Models Performance}} \\
\cmidrule{2-6}
\thead{Model}
& \thead{Resid.\\Mean}
& \thead{Const.\\Var.}
& \thead{Auto\\corr.}
& \thead{Adj.\\R\textsuperscript{2}}
& {\thead{AIC}} \\ % {} required for S[] to work
\midrule\midrule
1 & OK & OK & YES & 0.83 & 4804.8 \\
2 & OK & OK & YES & 0.84 & 4569.5 \\
3 & OK & OK & YES & 0.83 & 4763.7 \\
4 & OK & OK & YES & 0.87 & 3760.5 \\
5 & OK & OK & YES & 0.86 & 3964.5 \\
6 & No & No & YES & 0.32 & 10879.7 \\
7 & No & No & YES & 0.80 & 5434.2 \\
\bottomrule
\end{tabular}
\end{table}
\end{document}

Vertical alignment in cell table Latex

I created this table in Latex:
As you can see the text (MNIST, CIFAR10,...) in the column Dataset is not vertical aligned. How can I put that strings in the middle of the cell?
This is my code:
\begin{table}[!hbt]
\caption{Multi-row table}
\begin{center}
\begin{tabular}{|c|c|c|c|c|}
\hline
Category & Epochs per round & Dataset & FedAvg & FedCurv \\
\hline
\multirow{9}{2.5cm}{\centering Uniform Distribution} & 1 & MNIST & accuracy & accuracy \\
& 10 & & accuracy & accuracy \\
& 30 & & accuracy & accuracy \\ \cline{2-5}
& 1 & CIFAR10 & accuracy & accuracy\\
& 10 & & accuracy & accuracy\\
& 30 & & accuracy & accuracy \\\cline{2-5}
& 1 & TinyImageNet & accuracy & accuracy \\
& 10 & & accuracy & accuracy \\
& 30 & & accuracy & accuracy \\
\hline
\multirow{9}{2.5cm}{\centering Quantity Skew} & 1 & MNIST & accuracy & accuracy \\
& 10 & & accuracy & accuracy \\
& 30 & & accuracy & accuracy \\ \cline{2-5}
& 1 & CIFAR10 & accuracy & accuracy\\
& 10 & & accuracy & accuracy\\
& 30 & & accuracy & accuracy \\ \cline{2-5}
& 1 & TinyImageNet & accuracy & accuracy \\
& 10 & & accuracy & accuracy\\
& 30 & & accuracy & accuracy \\
\hline
\multirow{9}{2.5cm}{\centering Quantity Labels Skew} & 1 & MNIST & accuracy & accuracy \\
...
\multirow{9}{2.5cm}{\centering Covariate Shift} & 1 & MNIST & accuracy & accuracy \\
& 10 & & accuracy & accuracy \\
& 30 & & accuracy & accuracy \\ \cline{2-5}
& 1 & CIFAR10 & accuracy & accuracy\\
& 10 & & accuracy & accuracy\\
& 30 & & accuracy & accuracy \\ \cline{2-5}
& 1 & TinyImageNet & accuracy & accuracy \\
& 10 & & accuracy & accuracy\\
& 30 & & accuracy & accuracy \\
\hline
\end{tabular}
\end{center}
\label{tab:multicol}
\end{table}
I suggest to use the tabularray package instead of a traditional tabular.
Unrelated to the problem, but don't use the center environment inside a float, this will add additional vertical spacing. You can use \centering instead.
\documentclass{article}
\usepackage{tabularray}
\begin{document}
\begin{table}[!hbt]
\caption{Multi-row table}
%\begin{center}
\centering
\begin{tblr}{|c|c|c|c|c|}
\hline
Category & Epochs per round & Dataset & FedAvg & FedCurv \\
\hline
\SetCell[r=9]{} Uniform Distribution & 1 & \SetCell[r=3]{} MNIST & accuracy & accuracy \\
& 10 & & accuracy & accuracy \\
& 30 & & accuracy & accuracy \\ \cline{2-5}
& 1 & \SetCell[r=3]{}CIFAR10 & accuracy & accuracy\\
& 10 & & accuracy & accuracy\\
& 30 & & accuracy & accuracy \\\cline{2-5}
& 1 & \SetCell[r=3]{}TinyImageNet & accuracy & accuracy \\
& 10 & & accuracy & accuracy \\
& 30 & & accuracy & accuracy \\
\hline
\end{tblr}
%\end{center}
\label{tab:multicol}
\end{table}
\end{document}

How to place the figure in the overleaf in the middle?

I a trying to put a table in my report. I want to place it in the middle of the page.
but it is shifted to the right side. How can I fix it? (I am using overleaf)
I really appreciate it if anyone could help me to fix the problem.
This is the code:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{floatrow}
\floatsetup[table]{capposition=top}
\usepackage{natbib}
\usepackage{graphicx}
\usepackage{adjustbox}
\usepackage{tabularx}
\usepackage{caption}
\begin{table}[p]
\centering
\small
\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|}
\hline
\textbf{Sub fault} & \textbf{Lat} & \textbf{Lon} & \textbf{\begin{tabular}[c]{#{}c#{}}Depth\\ (Km)\end{tabular}} & \textbf{\begin{tabular}[c]{#{}c#{}}Strike\\ (Deg.)\end{tabular}} & \textbf{\begin{tabular}[c]{#{}c#{}}Dip \\ (Deg.)\end{tabular}} & \textbf{\begin{tabular}[c]{#{}c#{}}Length\\ (Km)\end{tabular}} & \textbf{\begin{tabular}[c]{#{}c#{}}Width\\ (Km)\end{tabular}} & \textbf{\begin{tabular}[c]{#{}c#{}}Rake \\ (Deg.)\end{tabular}} & \textbf{\begin{tabular}[c]{#{}c#{}}Slip (m)\\ Mw=9.0\end{tabular}} \\ \hline
\textbf{1} & 18.9848 & -65.6921 & 22.1 & 89.59 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{2} & 19.4069 & -65.6953 & 5 & 89.59 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{3} & 18.9484 & -66.5742 & 22.1 & 84.98 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{4} & 19.3688 & -66.6133 & 5 & 84.98 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{5} & 18.8738 & -67.5412 & 22.1 & 85.87 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{6} & 19.2948 & -67.5734 & 5 & 85.87 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{7} & 18.7853 & -68.4547 & 22.1 & 83.64 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{8} & 19.2048 & -68.5042 & 5 & 83.64 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{9} & 18.8870 & -63.8800 & 22.1 & 95.37 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{10} & 19.3072 & -63.8382 & 5 & 95.37 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{11} & 18.9650 & -64.8153 & 22.1 & 94.34 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{12} & 19.3859 & -64.7814 & 5 & 94.34 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{13} & 18.0566 & -61.5491 & 17.94 & 112.84 & 15 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{14} & 18.4564 & -61.3716 & 5 & 112.34 & 15 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{15} & 18.4149 & -62.4217 & 17.94 & 117.86 & 15 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{16} & 18.7985 & -62.2075 & 5 & 117.86 & 15 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{17} & 18.7844 & -63.1649 & 17.94 & 110.46 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{18} & 19.1798 & -63.0087 & 5 & 110.46 & 20 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{19} & 16.4535 & -59.9029 & 17.94 & 136.99 & 15 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{20} & 16.7494 & -59.5716 & 5 & 136.99 & 15 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{21} & 17.0903 & -60.5996 & 17.94 & 138.71 & 15 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{22} & 17.3766 & -60.2580 & 5 & 138.71 & 15 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{23} & 17.8560 & -61.1559 & 17.94 & 141.07 & 15 & 100 & 50 & 90 & 7.4 \\ \hline
\textbf{24} & 18.1286 & -60.8008 & 5 & 141.07 & 15 & 100 & 50 & 90 & 7.4 \\ \hline
\end{tabular}
\captionsetup{justification=centering}
\caption{\label{tab:table-name}source parameters for a Mw 9.0 PRT co-seismic source based on 24 sub-faults (Gica eal,2008). Corresponding surface elevation computed with Okadas (1985) method is shown in fig 3}
\end{table}
\clearpage
Your issue here is that the table is too wide to fit within the text block. As such, LaTeX pushes is against the left margin and let it overflow into the right margin. If you don't want to change anything and just centre it, you can wrap the entire tabular inside a \makebox[\linewidth]:
\begin{table}
\centering
\small
\makebox[\linewidth]{%
\begin{tabular}{| *{10}{c|} }
<your table here>
\end{tabular}%
}
\caption{<caption>}
\end{table}
For more details and options, see My table doesn't fit; what are my options?
You can try the following:
\begin{center}
\begin{tabular}{ | c | c | c | }
\hline
symbol & value & unit \\ \hline
$z Na$ & 11 & - \\ \hline
$z F$ & 9 & - \\ \hline
$Emax Na$ & 0.545 & $[MeV]$ \\ \hline
\end{tabular}
\end{center}
Refer: How to center table in latex

How do you add vertical lines to a table?

I am making a table and I am not able to make vertical lines to appear. I followed a few examples and they are still not appearing.
\begin{table}[h!]
\centering
\begin{tabular}{||c c c c||}
\hline
\multicolumn{4}{|c|}{Telescope Data} \\
\hline
Channels & \makecell{Beam Size\\ (arcsec)} & \makecell{Noise \\ (mJy/beam)} & Position of Peak Flux \\ [0.5ex]
\hline
1-10 & \makecell{\textbf{min:} 1.42 \\ \textbf{max:} 1.95} & 4.9928 & \makecell{\textbf{peak(x):} 15 \\ \textbf{peak(y):} -13.5 \\ \textbf{peak(flux, max):} 0.002846} \\ [3ex]
\hline
52-61 & \makecell{\textbf{min:} 1.423 \\ \textbf{max:} 1.95} & 0.0018912 & \makecell{\textbf{peak(x):} -0.25 \\ \textbf{peak(y):} 0 \\ \textbf{peak(flux, max):} 0.029341} \\ [3ex]
\hline
103-112 & \makecell{\textbf{min:} 1.427 \\ \textbf{max:} 1.956} & 0.000802855 & \makecell{\textbf{peak(x):} -16 \\ \textbf{peak(y):} 0 \\ \textbf{peak(flux, max):} 0.00241892} \\ [3ex]
\hline
\end{tabular}
\end{table}

How to merge cells with multirow in LaTeX?

I have the following code:
\begin{table}[ht]
\begin{center}
\begin{tabular}{ | l | l | l | l | l | l | l | }
\hline
\multirow{2}{*}{Oprava} & \multirow{2}{*}{zkratka} & \multirow{2}{*}{alg.} & chybovost \% & & & \\ \hline
& & & MAE & RSE & RMSE & RRSE \\ \hline
velikosti & vel. & NBM & & & & \\ \hline
& & c4.5 & & & & \\ \hline
& & kNN & & & & \\ \hline
& & SMO & & & & \\ \hline
bilateralne & bilat. & NBM & & & & \\ \hline
& & c4.5 & & & & \\ \hline
& & kNN & & & & \\ \hline
& & SMO & & & & \\ \hline
oprava & zkratka & NBM & & & & \\ \hline
& & c4.5 & & & & \\ \hline
& & kNN & & & & \\ \hline
& & SMO & & & & \\ \hline
oprava & zkratka & NBM & & & & \\ \hline
& & c4.5 & & & & \\ \hline
& & kNN & & & & \\ \hline
& & SMO & & & & \\ \hline
\end{tabular}
\end{center}
\caption{Multi-row table}
\label{tab:multicol}
\end{table}
And what I get is this:
I need to merge the cells, so that the text is not crossed out. The same for the rows with the repeated algorithms names - NBM, kNN etc ..... they should me merged and centered. Pls help.
Thanks
The solution to your problem is very simple. You should use \cline{4-7} instead of \hline. Namely \hline makes a horizontal line over the complete width of the table, while \cline{4-7} will only make a horizontal line from column 4 until 7, and thus not crossing the first ones.
To get the text in front of the repeated words centered and merged, you can use multirow{}{}, again in combination with \cline{}. More info about these commands at this link.
An example of the code is given below:
\begin{table}[]
\centering
\caption{My caption}
\label{my-label}
\begin{tabular}{|l|l|l|l|l|l|l|}
\hline
\multirow{2}{*}{Oprave} & \multirow{2}{*}{Zkratka} & \multirow{2}{*}{Alg.} & \multicolumn{4}{l|}{Chybovost \%} \\ \cline{4-7}
& & & MAE & RSE & RMSE & RRSE \\ \hline
\multirow{4}{*}{velikosti} & \multirow{4}{*}{vel.} & NBM & & & & \\ \cline{3-7}
& & c4.5 & & & & \\ \cline{3-7}
& & kNN & & & & \\ \cline{3-7}
& & SMO & & & & \\ \hline
\multirow{4}{*}{bilateralne} & \multirow{4}{*}{bilat.} & NBM & & & & \\ \cline{3-7}
& & c4.5 & & & & \\ \cline{3-7}
& & kNN & & & & \\ \cline{3-7}
& & SMO & & & & \\ \hline
\multirow{4}{*}{oprava} & \multirow{4}{*}{zkratka} & NBM & & & & \\ \cline{3-7}
& & c4.5 & & & & \\ \cline{3-7}
& & kNN & & & & \\ \cline{3-7}
& & SMO & & & & \\ \hline
\multirow{4}{*}{oprava} & \multirow{4}{*}{zkratka} & NBM & & & & \\ \cline{3-7}
& & c4.5 & & & & \\ \cline{3-7}
& & kNN & & & & \\ \cline{3-7}
& & SMO & & & & \\ \hline
\end{tabular}
\end{table}
Resulting into:
Note: if you have struggles with table generation, or you want a more quick way to easily make tables as you would do in Excel, you can use an online table generator for Latex.
I often use http://www.tablesgenerator.com/

Resources