LaTex table corner cell line not showing - latex

I'm using Overleaf to write a report. I can't seem to get the format just right for the top right corner cell.
I would also like to center "Correlation coefficient"
\begin{table}[h]
\caption{Correlation coefficient between force plate data and kinematic model data}
\label{IMUvsVB}
\begin{center}
\begin{tabular}{|c||c||c|}
\hline
\textbf{Ground reaction} & \multicolumn{2}{l}{\textbf{Correlation coefficient}} \\
\cline{2-3}
& \textbf{IMU based kinematics} & \textbf{Vision based kinematics}\\
\hline
Anteroposterior & 0.91 & 0.96\\
Mediolateral & 0.80 & 0.79\\
Vertical & 0.97 & 0.99\\
Frontal & 0.64 & 0.66\\
Sagittal & 0.91 & 0.94\\
Transverse & 0.82 & 0.84\\
\hline
\end{tabular}
\end{center}
\end{table}

Substitute
\textbf{Ground reaction} & \multicolumn{2}{l}{\textbf{Correlation coefficient}} \\
with
\textbf{Ground reaction} & \multicolumn{2}{c|}{\textbf{Correlation coefficient}} \\
The \multicolumn command needs 3 inputs:
The 1st one is the number of columns to be spanned.
The 2nd is the formatting of the cell (l for left, c for center and r for right). Here you can add also | for a single vertical line or even || for a double vertical line.
The 3rd one is the content of the cell.
Have a look at the documentation here if you need more insights on the usage of \multicolumn.

Related

How to build a table in latex that one column can have three subcolumns

I am trying to build a table in Latex that one column which in my case in "Factor Loading" has three subcolumns, and also text in the "Item" column to be wrapped if it too big.
\multicolumn{}{}{} is the way to merge a number of cells but in your case, I would move "Factor loading" to a bottom part with annotations. The table seems to look more balanced without and the information is still there.
Here is the solution with a few improvements
\documentclass{article}
\usepackage{geometry}
\usepackage{tabularx} % Mainly for X-type column. Also loads very useful `array` package
\usepackage{booktabs} % For custom rules: \toprule, \bottomrule, \midrule, \cmidrule and \spacialrule
\usepackage{caption} % For custom formatting of captions
\usepackage{ragged2e} % Adds \RaggedRight and \Centering and improves text typesetting in narrow cells
\usepackage[nopar]{kantlipsum} % Only for summy text - can be removed in final draft
\captionsetup[table]{position=top, skip=1pt} % Adds a small gap between caption and a table
\newcommand\tn[1]{\rlap{\textsuperscript{#1}}} % A custom macro to add an annotation mark
\newcommand\thead[1]{\textbf{#1}} % Formats headings
\renewcommand{\tabularxcolumn}[1]{>{\RaggedRight}p{#1}} % For X formatting. Here, it only adds \RaggedRight
\newcolumntype{F}[1]{>{\Centering}p{#1}} % A custom column-type. Adds centering to default left alignment of p{}
\begin{document}
\begin{table}[tbh]
\renewcommand*{\arraystretch}{1.5} % Stretch a table vertically adding small spacing between rows
\centering
\caption{The table}
\label{tab:table}
\begin{tabularx}{1.0\linewidth}{#{} p{2.2cm} | X | *3{#{}F{1.2cm}} #{}}
\toprule
\multicolumn{1}{#{}p{2.2cm}}{\thead{Construct}} % \multicolumn can also cancel vertical bars around cells
& \multicolumn{1}{c}{\thead{Items}}
& \thead{KR}\tn{*}
& \thead{SG}\tn{*}
& \thead{US}\tn{*} \\
\specialrule{\lightrulewidth}{3pt}{0pt}
Collaborative & \kant[1][1] & 0.798 & 0.814 & 0.878 \\
& \kant[1][2] & 0.749 & 0.874 & 0.838 \\
& \kant[1][3] & 0.865 & 0.878 & 0.924 \\
& \kant[1][4] & 0.893 & 0.834 & 0.820 \\
& \kant[1][5] & 0.910 & 0.86 & 0.898 \\
& \kant[1][6] & 0.770 & 0.903 & 0.921 \\
\specialrule{\heavyrulewidth}{0pt}{0pt}
\multicolumn{5}{#{}l}{\tn{*}\hspace{0.25em} Factor loading}
\end{tabularx}
\end{table}
\end{document}
EDIT.Also, as suggested, tabularray is another alternative. The package gives you very easy interface to actually paint tables. The downside is time of compilation, which is a few times longer than that of regular tables.
Just for fun, here a variation with the tabularray package:
\documentclass{article}
\usepackage{tabularray}
\usepackage{lipsum}
\begin{document}
\begin{table}[tbh]
\caption{The table}
\label{tab:table}
\begin{tblr}{|l|X|c|c|c|}
\hline
Construct & Items & \SetCell[c=3]{} Factor loading &&\\
\hline
& & KR & SG & US \\
\hline
Collaborative & \lipsum[1][1] & 0.798 & 0.814 & 0.878 \\
& \lipsum[1][1] & 0.749 & 0.874 & 0.838 \\
& \lipsum[1][1] & 0.865 & 0.878 & 0.924 \\
& \lipsum[1][1] & 0.893 & 0.834 & 0.820 \\
& \lipsum[1][1] & 0.910 & 0.86 & 0.898 \\
& \lipsum[1][1] & 0.770 & 0.903 & 0.921 \\
\hline
\end{tblr}
\end{table}
\end{document}

How to move table to the left or not exceed the right margin?

I am using Overleaf to take notes in my classes and I am running into trouble with a tabular column I am trying to create. My code is the following:
\begin{center}
\begin{tabular}{|c|c|}
\hline
Crystalline Solids & Non-Crsytalline Solids \\
\hline
i. Atoms and molecules are periodic in space & i. Atoms and molecules are not periodic in space \\
\hline
ii. Some crystalline solids are anisotopic \\
i.e the magnitudes of the physical properties like \\
refractive index, electrical conductivity are \\
different along difference directions \\ & ii. Physical properties are isotropic \\
\hline
iii. Have sharp melting points & iii. Do not have sharp boiling points - a range is present \\
\hline
iv. Breaks are observed in the cooling curve & iv. No breaks in cooling curve \\
\hline
v. Breaks along sharp edges i.e breaks \\
along specific "crystallographic planes" & v. Broken surfaces are irregular because there are no crystal planes \\
\hline
\end{tabular}
\end{center}
The problem is that now my table appears like so. https://imgur.com/ZrWFNSS
I have tried using the \begin{table} environment and the \begin{figure} environment but even after using qualifiers like [h] or [ht] the table's position in the text also changes, and the alignment is still off. How do I correct this to fit it into the page?
c, l and r columns don't wrap their contents. You'll have to use a fixed-width p{<len>} column for your tabular, or consider using tabularx.
Here's an option with a paragraph-style column specification:
\documentclass{article}
\usepackage{booktabs}
\begin{document}
\begin{center}
\begin{tabular}{ l p{.45\linewidth} p{.45\linewidth} }
\toprule
& \multicolumn{1}{c}{Crystalline Solids} &
\multicolumn{1}{c}{Non-Crystalline Solids} \\
\midrule
i. & Atoms and molecules are periodic in space &
Atoms and molecules are not periodic in space \\
ii. & Some crystalline solids are anisotopic \textit{i.e.}~the magnitudes of the physical properties
like refractive index, electrical conductivity are different along difference directions &
Physical properties are isotropic \\
iii. & Have sharp melting points &
Do not have sharp boiling points --- a range is present \\
iv. & Breaks are observed in the cooling curve &
No breaks in cooling curve \\
v. & Breaks along sharp edges i.e breaks along specific ``crystallographic planes'' &
Broken surfaces are irregular because there are no crystal planes \\
\bottomrule
\end{tabular}
\end{center}
\end{document}
Here's a similar option using tabularx:
\documentclass{article}
\usepackage{tabularx,booktabs}
\begin{document}
\noindent
\begin{tabularx}{\linewidth}{ l X X }
\toprule
& \multicolumn{1}{c}{Crystalline Solids} &
\multicolumn{1}{c}{Non-Crystalline Solids} \\
\midrule
i. & Atoms and molecules are periodic in space &
Atoms and molecules are not periodic in space \\
ii. & Some crystalline solids are anisotopic \textit{i.e.}~the magnitudes of the physical properties
like refractive index, electrical conductivity are different along difference directions &
Physical properties are isotropic \\
iii. & Have sharp melting points &
Do not have sharp boiling points~--- a range is present \\
iv. & Breaks are observed in the cooling curve &
No breaks in cooling curve \\
v. & Breaks along sharp edges i.e breaks along specific ``crystallographic planes'' &
Broken surfaces are irregular because there are no crystal planes \\
\bottomrule
\end{tabularx}
\end{document}

Missing Vertical Line Table

I have code for a latex table, but it seems it's missing the right vertical line in my title row. Am I missing something small? Here's my code:
\begin{center}
\begin{tabular}{||c c c||}
\hline
\textbf{Table Title} \\ [0.5ex]
\hline\hline
\hline
Col A & Col B & Col C \\
\hline\hline
1 & 0.39 & 6.16 \\
\hline
2 & 0.40 & 4.13 \\
\hline
3 & 0.28 & 0.12 \\
\hline
\end{tabular}
\end{center}
and this is the table I get:
As the row of interest spans three columns, you might want to use \multicolumn command: \multicolumn{# of columns}{alignment}{text}. So try replacing
\textbf{Table Title} \\ [0.5ex]
with
\multicolumn{3}{||l||}{\textbf{Table Title}}\\
Technically talking, the vertical line on the right of the first row does not appear because the table is set to have three cells per row but that first row only has one cell.
The two & in the line of code below would separate three cells within that row, allowing the vertical line on the right to show:
\textbf{Table Title} & & \\ [0.5ex]
Anyway, the solution using multicolumn shown in the other answer is to be preferred: this command allows the content of the first row to span along the three columns, less likeky influencing the overall width of the table.

Why in overleaf I miss a vertical edges in the table?

I am new in Latex, I create a table
\begin{table}[!ht]
\centering
\caption{Cities analyzed in this study}
\begin{adjustbox}{max width=\textwidth}
\begin{tabular}{|l|c|c|c|c|c|c|c|c|c|}
\hline
City & Number of & Number of & \multicolumn{2}{c}{Transportation type} \\
\cline{4-9}
& stations & routes & Bus & Tram & Subway&Rail&Ferry& Cable-car \\
\hline
Adelaide & 7548 & 9234 & 8950 &54 & - & 230 & -&- \\
\hline
But in the top right, the vertical line is not showing. How can I make it appear?
My second question how can I put 'Transportation type' on the center of the cell?
You can add the missing edge by using \multicolumn{6}{c|}{...}, but before you actually use this, please have a look at http://betterposters.blogspot.com/2012/08/the-data-prison.html or https://www.inf.ethz.ch/personal/markusp/teaching/guides/guide-tables.pdf for some guides about nice table layouts. Using vertical lines is really bad style.
Please also don't scale elements that contain text. This will make result in a suboptimal usage of font shapes. If you must make your table smaller, manually choose an appropriate font size.
\documentclass{article}
\begin{document}
\begin{table}[!ht]
\centering
\caption{Cities analyzed in this study}
\begin{tabular}{|l|c|c|c|c|c|c|c|c|c|}
\hline
City & Number of & Number of & \multicolumn{6}{c|}{Transportation type} \\
\cline{4-9}
& stations & routes & Bus & Tram & Subway&Rail&Ferry& Cable-car \\
\hline
Adelaide & 7548 & 9234 & 8950 &54 & - & 230 & -&- \\
\hline
\end{tabular}
\end{table}
\end{document}

LaTeX table too wide. How to make it fit?

I just started to learn latex and now I'm trying to create a table. This is my code:
\begin{table}
\caption{Top Scorers}
\begin{tabular}{ l l }
\hline
\bf Goals & \bf Players\\
\hline
4 & First Last, First Last, First Last, First Last\\
3 & First Last\\
2 & First Last\\
1 & First Last, First Last, First Last, First Last, First Last, First Last, First Last, First Last, First Last, First Last, First Last, First Last, First Last\\
\hline
\end{tabular}
\end{table}
The problem is that the table is wider than the page. I was hoping that it would automatically fit to the page like normal text does, but it didn't. How do I tell latex to make the table fit to the page?
Use p{width} column specifier: e.g. \begin{tabular}{ l p{10cm} } will put column's content into 10cm-wide parbox, and the text will be properly broken to several lines, like in normal paragraph.
You can also use tabular* environment to specify width for the entire table.
You have to take whole columns under resizebox. This code worked for me
\begin{table}[htbp]
\caption{Sample Table.}\label{tab1}
\resizebox{\columnwidth}{!}{\begin{tabular}{|l|l|l|l|l|}
\hline
URL & First Time Visit & Last Time Visit & URL Counts & Value\\
\hline
https://web.facebook.com/ & 1521241972 & 1522351859 & 177 & 56640\\
http://localhost/phpmyadmin/ & 1518413861 & 1522075694 & 24 & 39312\\
https://mail.google.com/mail/u/ & 1516596003 & 1522352010 & 36 & 33264\\
https://github.com/shawon100& 1517215489 & 1522352266 & 37 & 27528\\
https://www.youtube.com/ & 1517229227 & 1521978502 & 24 & 14792\\
\hline
\end{tabular}}
\end{table}
You can use these options as well, either use \footnotesize or \tiny. This would really help in fitting big tables.
\begin{table}[htbp]
\footnotesize
\caption{Information on making the table size small}
\label{table:table1}
\begin{tabular}{ll}
\toprule
S.No & HMD \\
\midrule
1 & HTC Vive \\
2 & HTC Vive Pro \\
\bottomrule
\end{tabular}
\end{table}

Resources