0

I want to align small tables and figures in a twocolumn document. This is supplemental information, so there is no text except the captions inside the floats. for the first column per page it works fine(ish), but the second ones are always vertically centered

\documentclass[fontsize=9pt, twocolumn]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath,amsfonts,amssymb}
\usepackage{multicol}
\usepackage{booktabs}
\usepackage{siunitx, textgreek, mhchem}

\begin{document}
\newcommand\T{\rule{0pt}{2.9ex}}       % Top strut
\newcommand\B{\rule[-1.2ex]{0pt}{0pt}} % Bottom strut
\begin{table}[t]
\centering \caption{SDS-PAGE buffers composition. SDS stands for Sodium dodecyl sulfate.} \label{SIsdsPAGE1}
\begin{tabular}{lSl}\toprule
\multicolumn{3}{l}{Stacking Buffer}\\\cmidrule(lr){1-3}
Tris/HCl pH\,8.8 & 1.5 & M\\
SDS & 0.4 & \%\,(w/v) \\
\multicolumn{3}{l}{\T Separation Buffer}\\\cmidrule(lr){1-3}
Tris/HCl pH\,6.8 & 0.5 & M \\
 SDS & 0.4 & \%\,(w/v) \\
\multicolumn{3}{l}{\T Sample Buffer}\\\cmidrule(lr){1-3}
Stacking Buffer & 25 & \%\,(v/v) \\
SDS & 5 & \%\,(w/v)\\
Glycerol & 20 & \%\,(w/v)\\
Bromophenol blue & 0.02 & \%\,(w/v)\\
\textbeta -mercaptoethanol & 9.5 & \%\,(v/v)\\
\multicolumn{3}{l}{\T Running Buffer}\\\cmidrule(lr){1-3}
Tris/HCl pH\,8.8 & 25 & mM \\
SDS & 0.1 & \%\,(w/v)\\
Glycine & 192 & mM\\\bottomrule
\end{tabular}
\end{table}
\begin{table}[h]
\centering \caption{SDS-PAGE gel composition\,(10\%\,Acrylamide for the resolving gel, 4\,\%\, for the stacking gel).\newline
\textsuperscript{1}With 0.8\,\% Methylenbisacrylamide.}\label{SIsdsPAGE2}
\begin{tabular}{lSS}\toprule
Reagent & \multicolumn{1}{c}{Stacking Gel} & \multicolumn{1}{c}{Resolving Gel}\\\cmidrule(lr){1-3}
Stacking buffer &\SI{0.75}{\milli\liter} & \\
Resolving buffer &  & \SI{1.88}{\milli\liter} \\
Acrylamide\textsuperscript{1}(30\,\%) & \SI{0.40}{\milli\liter} & \SI{2.51}{\milli\liter} \\
APS\,(10\,\%) & \SI{30}{\micro\liter} & \SI{75}{\micro\liter}\\
\ce{ddH2O} & \SI{1.83}{\milli\liter} & \SI{3.09}{\milli\liter} \\
TEMED\,($\geq 99\,\%$, p.a.) & \SI{6}{\micro\liter} & \SI{8}{\micro\liter} \\\bottomrule
\end{tabular}
\end{table}
\begin{table}[!t]
\centering
\caption{Western blot buffers composition.}\label{SIWBlot}
\begin{tabular}{lSl}
\multicolumn{3}{l}{Transfer Buffer}\\\cmidrule(lr){1-3}
Tris/HCl pH\,7.5 & 25 & mM\\
Glycerine & 192 & mM \\
SDS & 0.1 & \%\,(w/v) \\
\ce{MeOH} & 20 & \%\,(v/v) \\
\multicolumn{3}{l}{\T TBS Tween/Triton Buffer}\\\cmidrule(lr){1-3}
Tris/HCl pH\,7.5 & 20 & mM \\
NaCl & 0.15 & mM \\
Tween 20 & 0.05 & \%\,(v/v) \\
Triton X-100 & 0.1 & \%\,(v/v) \\
\multicolumn{3}{l}{\T Blocking Buffer}\\\cmidrule(lr){1-3}
Skim milk powder & 5 & \%\,(w/v) \\
TBS Tween/Triton & 95 & \%\,(v/v) \\
\multicolumn{3}{l}{\T Staining Buffer A}\\\cmidrule(lr){1-3}
Tris/HCl pH\,9.5 & 100 & mM \\
NaCl & 100 & mM \\
\ce{MgCl2} & 5 & mM \\\bottomrule
\end{tabular}
\end{table}
\clearpage
\end{document}

I just copied from my report because I dont have the time to write several mocktables, but since i need every package in there anyways, I consider this an minimal required example.

Katjuscha
  • 103
  • you are setting impossible constraints and then relying on latex's default fallback to rescue the floats. begin{table}[!t] means the float must be placed at the top of a text page, not on a page containing just floats (as you have removed p) but there is no text so no floats can be placed and so they are all held back until the end of the document(actually you have a \clearpage but that is the same thing here as \end{document} starts with \clearpage. You want to use the default setting not[!t]` and then arrange that float pages align at the top not centred (I'll add a link) – David Carlisle Feb 05 '20 at 12:53
  • 2
    https://tex.stackexchange.com/questions/28556/how-to-place-a-float-at-the-top-of-a-floats-only-page/28565#28565 – David Carlisle Feb 05 '20 at 13:05
  • thanks, very nice explanation on how the kernel processes floats on the linked answer. – Katjuscha Feb 05 '20 at 14:49

0 Answers0