Wie fügt man in der CAS-DC-Klasse eine Abbildung mit einigen Unterabbildungen in zwei Spalten ein?

Wie fügt man in der CAS-DC-Klasse eine Abbildung mit einigen Unterabbildungen in zwei Spalten ein?

Ich verwende die cas-dc-Klasse von Elsevier in Overleaf. Ich möchte eine Abbildung mit einigen Unterabbildungen in ein zweispaltiges Dokument einfügen und mein Code lautet wie folgt:

\documentclass[a4paper,fleqn,twocolumn]{cas-dc}

\usepackage{natbib}
\usepackage{adjustbox}
\usepackage{appendix,booktabs}
\usepackage{lipsum}
\usepackage{mathtools, cuted}
\usepackage{autobreak}
\usepackage[utf8]{inputenc}
\usepackage{nccmath}

\usepackage{lipsum}
\usepackage{flushend}
\usepackage{amsmath}
\usepackage{afterpage}
\usepackage{url}

\usepackage{amsfonts,amsmath,amssymb,amstext,amsthm,xspace,pdfsync,enumerate,graphicx}
\usepackage{float}
\usepackage{algpseudocode}
\usepackage{siunitx}
\usepackage[ruled]{algorithm}

\usepackage[font=footnotesize,labelfont=bf]{caption}
\usepackage[font=footnotesize,labelfont=bf]{subcaption}

\allowdisplaybreaks
\PassOptionsToPackage{noend}{algpseudocode}% comment out if want end's to show
\usepackage{algpseudocode}% http://ctan.org/pkg/algorithmicx

\errorcontextlines\maxdimen

\begin{document}
\lipsum[11]
\begin{figure*}
    \begin{subfigure}{.5\textwidth}
        \centering
        \includegraphics[width=7cm,height=6cm]{10.png}
        \caption{ 10 }
         \label{10}
    \end{subfigure}
    \begin{subfigure}{.5\textwidth}
    \centering
        \includegraphics[width=7cm,height=6cm]{100.png}
        \caption{ 100 }
         \label{100}
    \end{subfigure}
    \begin{subfigure}{.5\textwidth}
    \centering
        \includegraphics[width=7cm,height=6cm]{500.png}
        \caption{500}
         \label{500}
    \end{subfigure}
    \begin{subfigure}{.5\textwidth}
    \centering
        \includegraphics[width=7cm,height=6cm]{1000.png}
        \caption{1000}
         \label{1000}
    \end{subfigure} 
    \begin{subfigure}{.5\textwidth}
    \centering
        \includegraphics[width=7cm,height=6cm]{5000.png}
        \caption{5000}
         \label{5000}
    \end{subfigure}
        \caption{Comparison }
        \label{Comparison }
\end{figure*}
\end{document}

Aber alle Abbildungen wurden in einer Spalte angezeigt und zwei davon sowie die Bildunterschrift wurden außerhalb der Seite (unter der Fußnote) angezeigt, sodass ich sie nicht sehen kann. Wenn ich die Klasse elsarticle anstelle von cas-dc verwende:

\documentclass[a4paper,fleqn]{elsarticle}

es funktioniert einwandfrei und alle Unterabbildungen stehen in zwei Spalten. Wie kann ich das Problem mit der CAS-DC-Klasse beheben?

Antwort1

Die Dokumentklasse cas-dcenthält einige Pakete (zum Beispiel graphicx) und definiert sie auch neu. Außerdem ist es erforderlich, dass einige Pakete in die Präambel geladen werden müssen, zum Beispiel Pakete im Zusammenhang mit der Bibliographie.

Nach der Umstellung Ihres figureCodes erhalte ich folgendes Ergebnis:

Bildbeschreibung hier eingeben

MWE:

\documentclass[demo,
               a4paper,fleqn]
               {cas-dc} % this give one column document
                        % regardless that it is declared 
                        % as two columns document
\usepackage{subcaption}

\usepackage{natbib} % cas-cd require that this or similar bib package is loaded
\usepackage{lipsum} % 

\begin{document}
\lipsum[11]
    \begin{figure}
    \centering
    \setkeys{Gin}{width=\linewidth,height=6cm} %set image parameters
\begin{subfigure}{6cm}
    \includegraphics{10.png}
    \caption{ 10 }
    \label{10}
\end{subfigure}
\hfil
\begin{subfigure}{6cm}
    \includegraphics{100.png}
    \caption{ 100 }
    \label{100}
\end{subfigure}

\medskip
\begin{subfigure}{6cm}
    \includegraphics{500.png}
\caption{500}
\label{500}
\end{subfigure}
\hfill
\begin{subfigure}{6cm}
    \includegraphics{1000.png}
\caption{1000}
\label{1000}
\end{subfigure}

\medskip
\begin{subfigure}{6cm}
    \includegraphics{5000.png}
\caption{5000}
\label{5000}
\end{subfigure}
%
\caption{Comparison }
\label{Comparison }
    \end{figure}
\end{document}

Bearbeiten: Falls Sie ein zweispaltiges Dokument haben möchten, müssen Sie die Option „twocolumn“ int document class options hinzufügen:

\documentclass[demo,
               a4paper,fleqn,
               twocolumn]{cas-dc}% now the document has two columns

und dann für Zahlen über zwei Spalten verwenden Sie stattdessen figurefloat figure*, wie Sie es in Ihrem Dokumentbeispiel verwenden. Mit diesen Änderungen ist das Ergebnis

Bildbeschreibung hier eingeben

Bearbeiten (2) Aus unbekanntem Grund cas-dcwird ohne Option kein zweispaltiges Dokument erstellt twocolumn(getestet mit meiner lokalen MikTeX-Installation und mit dem Overleaf-Dienst). Das zweite Beispiel hat jedenfalls zwei Spalten und die Bilder sind über zwei Textspalten verteilt, unabhängig davon, wie sie erhalten werden.

Nachtrag: In der Präambel Ihres Dokuments sind einige Pakete doppelt und in der falschen Reihenfolge. Ich versuche also, aufzuräumen und neu zu organisieren, damit ein einheitlicheres Muster entsteht. Dabei frage ich mich, ob Sie all diese Pakete wirklich brauchen?

Probieren Sie aus, ob die folgende Präambel für Sie funktioniert:

\documentclass[demo,
               a4paper,fleqn,
               twocolumn]{cas-dc}
%\usepackage[utf8]{inputenc} at new LaTeX version it is default 
\usepackage{natbib}
%math
\usepackage{nccmath, mathtools} % nccmath had to be first, than mathtools
\allowdisplaybreaks
\usepackage{amssymb,amsthm,xspace}
\usepackage{autobreak}  % not recommended
% tables, units
\usepackage{booktabs}
\usepackage{siunitx}
% lists
\usepackage{enumerate}
% miscellaneous 
\usepackage{appendix}
\usepackage{flushend}
\usepackage{afterpage}
\usepackage{cuted, float}
\usepackage{adjustbox}
\usepackage[font=footnotesize,labelfont=bf]{subcaption}
% algorithms
\usepackage{algpseudocode}
\PassOptionsToPackage{noend}{algpseudocode}% comment out if want end's to show
\usepackage[ruled]{algorithm}

\usepackage{url}
\errorcontextlines\maxdimen

\usepackage{lipsum} % for dummy text, not needed in real document

verwandte Informationen