latex-figure-table-layout

Professional LaTeX figure and table positioning. Handle float placement, subfigure/subtable layouts, side-by-side arrangements, and cross-column figures. Does NOT adjust sizes, widths, or scaling.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "latex-figure-table-layout" with this command: npx skills add dw-dengwei/skills/dw-dengwei-skills-latex-figure-table-layout

LaTeX Figure and Table Layout

Expert guidance for positioning figures and tables in LaTeX documents. This skill handles float placement, subfigure arrangements, side-by-side layouts, and cross-column positioning.

When to Use This Skill

Use this skill when:

  • Adjusting figure/table position parameters ([h], [t], [b], [p])
  • Arranging multiple figures/tables in subfigures
  • Creating side-by-side figure or figure+table layouts
  • Fixing float positioning issues (drifting, page alone)
  • Working with cross-column figures (figure*, table*)

NOTE: This skill does NOT modify sizes, column widths, or scaling. Only positioning.


Float Position Parameters

Position Specifiers

ParameterMeaningPriority
[h]Here (exact location)Highest
[t]Top of pageMedium
[b]Bottom of pageMedium
[p]Separate float pageLowest
[!]Override LaTeX defaults-

Recommended Order

\begin{figure}[htbp]  % Recommended: try here, then top, bottom, then float page
\end{figure}

Strong Recommendations

\begin{figure}[!htbp]  % Force LaTeX to respect your order
\end{figure}

Best Practice: Use [htbp] or [!htbp] for most cases. Avoid single [h] which can cause float to drift.


Subfigure Layout with subcaption

Basic Subfigures (2 side-by-side)

\usepackage{subcaption}

\begin{figure}[htbp]
  \centering
  \begin{subfigure}[b]{0.45\textwidth}
    \includegraphics[width=\textwidth]{figure1.pdf}
    \caption{First figure}
    \label{fig:first}
  \end{subfigure}
  \hfill
  \begin{subfigure}[b]{0.45\textwidth}
    \includegraphics[width=\filename]{figure2.pdf}
    \caption{Second figure}
    \label{fig:second}
  \end{subfigure}
  \caption{Main caption for both figures}
  \label{fig:both}
\end{figure}

Subfigures in Grid (2x2)

\begin{figure}[htbp]
  \centering
  \begin{subfigure}[t]{0.45\textwidth}
    \includegraphics[width=\filename]{fig1.pdf}
    \caption{Caption A}
  \end{subfigure}
  \hfill
  \begin{subfigure}[t]{0.45\textwidth}
    \includegraphics[width=\filename]{fig2.pdf}
    \caption{Caption B}
  \end{bmatrix}
  \\
  \begin{subfigure}[t]{0.45\textwidth}
    \includegraphics[width=\filename]{fig3.pdf}
    \caption{Caption C}
  \end{subfigure}
  \hfill
  \begin{subfigure}[t]{0.45\textwidth}
    \includegraphics[width=\filename]{fig4.pdf}
    \caption{Caption D}
  \end{subfigure}
  \caption{Main caption for all four}
  \label{fig:grid}
\end{figure}

Subtables

\begin{table}[htbp]
  \centering
  \begin{subtable}[t]{0.45\textwidth}
    \centering
    \begin{tabular}{cc}
      \toprule
      A & B \\
      \midrule
      1 & 2 \\
      \bottomrule
    \end{tabular}
    \caption{First table}
    \label{tab:first}
  \end{subtable}
  \hfill
  \begin{subtable}[t]{0.45\textwidth}
    \centering
    \begin{tabular}{cc}
      \toprule
      C & D \\
      \midrule
      3 & 4 \\
      \bottomrule
    \end{tabular}
    \caption{Second table}
    \label{tab:second}
  \end{subtable}
  \caption{Main caption}
  \label{tab:both}
\end{table}

Side-by-Side: Figure + Table

Using minipage

\begin{figure}[htbp]
  \centering
  \begin{minipage}[c]{0.45\textwidth}
    \centering
    \includegraphics[width=\filename]{figure.pdf}
    \caption{My figure}
    \label{fig:minipage}
  \end{minipage}
  \hfill
  \begin{minipage}[c]{0.45\textwidth}
    \centering
    \begin{tabular}{lc}
      \toprule
      Method & Acc \\
      \midrule
      A & 85.2 \\
      B & 92.1 \\
      \bottomrule
    \end{tabular}
    \caption{My table}
    \label{tab:minipage}
  \end{minipage}
  \caption{Combined figure and table}
  \label{fig+tab}
\end{figure}

Using subcaptionbox

\begin{figure}[htbp]
  \centering
  \subcaptionbox{Figure label\label{fig:subcap}}
    {\includegraphics[width=0.45\textwidth]{figure.pdf}}
  \qquad
  \subcaptionbox{Table label\label{tab:subcap}}
    {\begin{tabular}{lc}
      \toprule
      A & B \\
      \midrule
      1 & 2 \\
      \bottomrule
    \end{tabular}}
  \caption{Combined caption}
  \label{fig:subcap:combined}
\end{figure}

Cross-Column Figures (twocolumn)

Cross-Column Figure

\begin{figure*}[htbp]
  \centering
  \includegraphics[width=0.8\textwidth]{wide-figure.pdf}
  \caption{Wide figure spanning both columns}
  \label{fig:wide}
\end{figure*}

Cross-Column Table

\begin{table*}[htbp]
  \centering
  \begin{tabular}{lcccc}
    \toprule
    Method & A & B & C & D \\
    \midrule
    Baseline & 85.2 & 86.1 & 87.3 & 88.0 \\
    Ours & \textbf{92.1} & \textbf{91.5} & \textbf{93.2} & \textbf{94.1} \\
    \bottomrule
  \end{tabular}
  \caption{Wide table spanning both columns}
  \label{tab:wide}
\end{table*}

Common Float Issues and Solutions

Issue: Figure drifts to end of document

Cause: Using [h] alone or figure is too large

Solution:

% Before (problematic)
\begin{figure}[h]

% After (recommended)
\begin{figure}[htbp]
% Or force placement
\begin{figure}[!htbp]

Issue: Figure takes entire page alone

Cause: [p] triggers float page, or figure is large

Solution:

% Add stretch to push other content
\begin{figure}[htbp]
  \centering
  \includegraphics[width=0.7\textwidth]{figure.pdf}
  \caption{Caption}
  % Add space to encourage text to flow around
\end{figure}

Issue: Figure separated from text reference

Cause: Float placement rules

Solution:

  1. Use [!htbp] to force earlier placement
  2. Place figure closer to its reference in source
  3. Use \FloatBarrier from placeins package:
\usepackage{placeins}
\section{My Section}
Text reference to \figurename~\ref{fig:myfig}.

\begin{figure}[htbp]
  \centering
  \includegraphics[width=0.8\textwidth]{figure.pdf}
  \caption{My figure}
  \label{fig:myfig}
\end{figure}
\FloatBarrier  % Prevents floats from crossing this barrier

Issue: Subfigures not aligned

Cause: Different heights, missing alignment option

Solution:

% Use [t], [b], or [c] for vertical alignment
\begin{subfigure}[t]{0.45\textwidth}  % [t] = top alignment
\begin{subfigure}[b]{0.45\textwidth}  % [b] = bottom alignment

Issue: Captions not centered under subfigures

Cause: Missing width specification

Solution:

\begin{subfigure}[t]{0.45\textwidth}
  \centering
  \includegraphics[width=\filename]{fig.pdf}
  \caption{Caption text}
\end{subfigure}

Best Practices

  1. Use [htbp] by default - gives LaTeX flexibility while respecting order
  2. Use [!htbp] for important figures - overrides some float constraints
  3. Place floats near their reference - in source order, not necessarily final position
  4. Use booktabs for tables - professional look, but this skill doesn't handle formatting
  5. Use subcaption package - modern replacement for subfig
  6. Consider \FloatBarrier - for strict float control in sensitive locations

Required Packages

The following packages are referenced in the examples above:

\usepackage{subcaption}  % For subfigure/subtable
\usepackage{booktabs}    % For professional tables (not positioning)
\usepackage{placeins}    % For \FloatBarrier

Example Tasks

RequestApproach
"Figure 1 always goes to next page"Change [h] to [htbp] or [!htbp]
"Arrange 4 figures in 2x2 grid"Use subfigure with line break \\
"Put figure and table side by side"Use minipage or subcaptionbox
"Figure 2 is far from Section 2.2"Use [!htbp] or add \FloatBarrier
"Wide table spans both columns"Use table* instead of table

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

interactive-intro-writer

No summary provided by upstream source.

Repository SourceNeeds Review
General

OpenClaw Skill Growth

Make OpenClaw Skills observable, diagnosable, and safely improvable over time. Use this when the user wants to maintain many SKILL.md files, inspect repeated...

Registry SourceRecently Updated
171Profile unavailable
General

Find Skills for ClawHub

Search for and discover OpenClaw skills from ClawHub (the official skill registry). Activate when user asks about finding skills, installing skills, or wants...

Registry SourceRecently Updated
2871Profile unavailable
General

Writing Reboot Review

帮助用户做写作复盘、内容定位梳理和写作重启规划。通过结构化深度对话识别断更或写不下去的真实原因,澄清继续写作想获得的收益,提炼适合长期输出的独特价值,并产出明确的目标读者、内容方向和可执行的重启建议。Use when users ask for 写作复盘、写作定位、内容定位、写作方向梳理、深度写作对话,或提到断更...

Registry SourceRecently Updated
550Profile unavailable