複数のサブ図を含む図の追加中にエラーが発生しました

複数のサブ図を含む図の追加中にエラーが発生しました

2 つ以上のサブ図で構成される図を含めたいと思います。これが私のコードです:

\begin{figure}[ht]
    \centering
    \begin{subfigure}[b]{0.3\textwidth}
        \includegraphics[width=\textwidth]{../figuras/fig1}
        \caption{Caption}
    \end{subfigure}
    \quad
    \begin{subfigure}[b]{0.3\textwidth}
        \includegraphics[width=\textwidth]{../figuras/fig2}
        \caption{Caption}
    \end{subfigure}
    \quad
    \begin{subfigure}[b]{0.3\textwidth}
        \includegraphics[width=\textwidth]{../figuras/fig3}
        \caption{Caption}
    \end{subfigure}
\caption{Caption}
\end{figure}

そして、次のパッケージをインポートしました:

\usepackage[latin1]{inputenc}
\usepackage{babel}
\usepackage{fancyhdr}
\usepackage{subcaption}
\usepackage{geometry}
\usepackage{makeidx}
\usepackage{graphicx}
\usepackage{latexsym}
\usepackage{amssymb}
\usepackage{eucal}
\usepackage{setspace}\singlespacing

すべての \caption 行にこのエラーがあります:

欠落している \endcsname が挿入されました。 \caption{Caption} 余分な \endcsname。 \caption{Caption}

どうすれば修正できますか?

答え1

以下の mwe (最小限の動作例) では、私はあなたのコード フラグメントから作成し、次の変更を加えました。

  • demoオプションを追加しますgraphicx(これは、私が持っていない画像の代わりにブラックボックスを生成します)
  • lipsumテスト文書にダミーテキストのパッケージを追加する
  • 左右のテキスト枠の間に画像を等間隔に配置する\quad幅を置き換えます\hfill
  • コーディングを完了するのに役立つかもしれないいくつかのコードを追加しますムウェ(最小限の動作例) は次のとおりです。

    \documentclass[english]{book}
    % \usepackage[latin1]{inputenc} % better to use \usepackage[utf]{inputenc}
                                    % which is newest version of document classes default
    \usepackage{babel}
    \usepackage{fancyhdr}
    \usepackage{subcaption}
    \usepackage{geometry}
    \usepackage{makeidx}
    \usepackage[demo]{graphicx}         % in the real document remove option "demo"
    %\usepackage{latexsym}
    \usepackage{amssymb}
    \usepackage{eucal}
    %\usepackage{setspace}\singlespacing
    
    \usepackage{lipsum}                 % for dummy text, remove in the real document
    \begin{document}
    \lipsum[1-5]
        \begin{figure}[htb]
    %\centering
        \begin{subfigure}[b]{0.3\textwidth}
            \includegraphics[width=\linewidth]{../figuras/fig1}
            \caption{sub caption}
        \end{subfigure}
        \hfill
        \begin{subfigure}[b]{0.3\textwidth}
            \includegraphics[width=\linewidth]{../figuras/fig2}
            \caption{sub caption}
        \end{subfigure}
        \hfill
        \begin{subfigure}[b]{0.3\textwidth}
            \includegraphics[width=\linewidth]{../figuras/fig3}
            \caption{sub caption}
        \end{subfigure}
    \caption{Main caption}
        \end{figure}
    \lipsum[6-10]
    \end{document}
    

これにより、次のようになります。

ここに画像の説明を入力してください

上からムウェ結果として、そのコードはエラーを引き起こしません。ドキュメントのログファイルが不明であるため、エラーがどこから発生しているかを特定するのは困難です。さらにサポートが必要な場合は、上記のように、ドキュメントの断片を1つの小さいが完全なドキュメントに結合してください。ムウェそれを質問に追加してください。

答え2

お役に立てれば。

\documentclass[12pt,twoside]{book}
\usepackage[latin1]{inputenc}
\usepackage{babel}
\usepackage{fancyhdr}
\usepackage{subcaption}
\usepackage{geometry}
\usepackage{makeidx}
\usepackage{graphicx}
\usepackage{latexsym}
\usepackage{amssymb}
\usepackage{eucal}
\usepackage{setspace}
\singlespacing
\begin{document}
\begin{figure}[ht]
\centering
\begin{subfigure}[b]{0.3\textwidth}
    \includegraphics[width=\textwidth]{../figuras/fig1}
    \caption{Caption}
\end{subfigure}
\quad
\begin{subfigure}[b]{0.3\textwidth}
    \includegraphics[width=\textwidth]{../figuras/fig2}
    \caption{Caption}
\end{subfigure}
\quad
\begin{subfigure}[b]{0.3\textwidth}
    \includegraphics[width=\textwidth]{../figuras/fig3}
    \caption{Caption}
\end{subfigure}
\caption{Caption}
\end{figure}
\end{document}

画像がないので、ソース コードに対して次の出力を取得しています。スクリーンショットを参考用に添付します。

ここに画像の説明を入力してください

編集 2:SubFloat環境を使用した代替ソリューション (13 個のサブ図を含む図)。

\documentclass[12pt,a4paper,twoside,onecolumn]{book}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{subfig}
\begin{document}
\begin{figure*}
\mbox{\subfloat[]{\label{1} \includegraphics[height=2.3cm]{example-image-a}}}
\mbox{\subfloat[]{\label{2} \includegraphics[height=2.3cm]{example-image-b}}}
\mbox{\subfloat[]{\label{3} \includegraphics[height=2.3cm]{example-image-c}}}
\mbox{\subfloat[]{\label{4} \includegraphics[height=2.3cm]{example-image-b}}}
\mbox{\subfloat[]{\label{5} \includegraphics[height=2.3cm]{example-image-b}}}
\mbox{\subfloat[]{\label{6} \includegraphics[height=2.3cm]{example-image-c}}}
\mbox{\subfloat[]{\label{7} \includegraphics[height=2.3cm]{example-image-b}}}
\mbox{\subfloat[]{\label{8} \includegraphics[height=2.3cm]{example-image-b}}}
\mbox{\subfloat[]{\label{9} \includegraphics[height=2.3cm]{example-image-a}}}
\mbox{\subfloat[]{\label{10} \includegraphics[height=2.3cm]{example-image-b}}}
\mbox{\subfloat[]{\label{11} \includegraphics[height=2.3cm]{example-image-c}}}
\mbox{\subfloat[]{\label{12} \includegraphics[height=2.3cm]{example-image-b}}}
\mbox{\subfloat[]{\label{13} \includegraphics[height=2.3cm]{example-image-b}}}


\caption{Normal Models. \protect\subref{subfig:1} SLR. \protect\subref{subfig:2} MLR. \protect\subref{subfig:3} SWR. \protect\subref{subfig:4} OLS. \protect\subref{5} OLS. \protect\subref{6} OS. \protect\subref{7} Ok. \protect\subref{8} hi. \protect\subref{9} hey. \protect\subref{10} MSD. \protect\subref{11} LPY. \protect\subref{12} MSY. \protect\subref{13} Hello.}
\label{fig}
\end{figure*}
\end{document}

関連情報