一行中显示较窄的子图标题

一行中显示较窄的子图标题

我有以下 TeX 代码:

\documentclass{article}
\usepackage{tikz}
\usepackage{amsmath,amssymb}
%\usepackage{subcaption} 
\usepackage{xcolor}
\usepackage{subfigure}
%\usetikzlibrary{backgrounds,automata}
\title{Tree}
\author{Author}

\begin{document}
\maketitle

\begin{figure*}[ht!]
\centering
\subfigure[$b^T e = 1$]  
{
    \begin{tikzpicture} 
        \node[rectangle,draw,color=red] {} [grow'=up];
    \end{tikzpicture}
}
\hspace{5em}
\subfigure[ $b^T e = 1$ ]
{
        \begin{tikzpicture} 
        \node[circle,draw] {} [grow'=up];
    \end{tikzpicture}
}
\end{figure*}
\end{document}

答案1

像这样:

在此处输入图片描述

您的图片subfigure太窄,其下方的标题(在您的情况下可适应图片宽度)只能容纳在一列中。使用您选择的subfigure(顺便说一下,它非常旧,已被新替换subfig)上面的图片很难获得,最好使用subcaption包及其subfigure环境,您可以为其定义环境宽度,从而为(子)标题腾出更多空间)。请参阅下面的 MWE。

\documentclass{article}
\usepackage{tikz}
\usepackage{amsmath,amssymb}
\usepackage{subcaption}

\title{Tree}
\author{Author}

    \begin{document}
    \maketitle
\begin{figure}[htb]
    \centering
\begin{subfigure}[b]{0.3\textwidth}\centering
    \begin{tikzpicture}
        \node[rectangle,draw,color=red] {} [grow'=up];
    \end{tikzpicture}    
\caption{$b^T e = 1$}
\end{subfigure}
\begin{subfigure}[b]{0.3\textwidth}\centering
    \begin{tikzpicture}
        \node[circle,draw,color=red] {} [grow'=up];
    \end{tikzpicture}
\caption{$b^T e = 1$}
\end{subfigure}
\caption{My subfigures}
\end{figure}
    \end{document}    

相关内容