`pythontex` 和 `\subfigure`

`pythontex` 和 `\subfigure`

pythontex导致\subfigure环境错误。

我必须重写我的论文,其中包含许多图形和子图,其中一些是用 LaTeX 中的 python 绘制的(我不得不放弃该python软件包)。当添加子图时ptyhontex,会抱怨

!

LaTeX Error: Environment subfigure undefined.

 (... cut ...)

l.20 \begin{subfigure}
                      {0.4\textwidth}
?

我的最小工作示例:

% !TEX options=--shell-escape

% Create subfigures in LaTeX
% https://latex-tutorial.com/subfigure-latex/

\RequirePackage{pythontex}  % when these
\setpythontexlistingenv{listingPtex}  % lines are commented, it compiles just fine

\documentclass[a4paper,onecolumn,oneside,12pt]{mwrep}


\usepackage{subcaption}
\usepackage{graphicx}

\begin{document}
        
\begin{figure}
\centering
\begin{subfigure}{0.4\textwidth}
    \includegraphics[width=\textwidth]{example-image}
    \caption{Firts subfigure.}
    \label{fig:first}
\end{subfigure}
\hfill
\begin{subfigure}{0.4\textwidth}
    \includegraphics[width=\textwidth]{example-image}
    \caption{Second subfigure.}
    \label{fig:second}
\end{subfigure}
\hfill
\begin{subfigure}{0.4\textwidth}
    \includegraphics[width=\textwidth]{example-image}
    \caption{Third subfigure.}
    \label{fig:third}
\end{subfigure}
        
\caption{Creating subfigures in \LaTeX.}
\label{fig:figures}

\end{figure}

\end{document}

我尝试使用report类来编译它,而不是mwrep-- 没有帮助。更改listingPtexlisting两者皆非。

至少有几种python与 LaTeX 结合的解决方案——也许值得采用另一种方法?你有什么建议吗?

或者我应该尝试不同的子图方法?这样的方法可以吗pythontex

提前致谢。

答案1

pythontex在 之前不要加载。只需修复( 它没有定义)\documentclass中缺少的兼容性位。mwrep.cls\@chapter

\documentclass[a4paper,onecolumn,oneside,12pt]{mwrep}


\usepackage{subcaption}
\usepackage{graphicx}

\makeatletter\providecommand\@chapter{}\makeatother

\usepackage{pythontex}
\setpythontexlistingenv{listingPtex}

\begin{document}
        
\begin{figure}
\centering
\begin{subfigure}{0.4\textwidth}
    \includegraphics[width=\textwidth]{example-image}
    \caption{Firts subfigure.}
    \label{fig:first}
\end{subfigure}
\hfill
\begin{subfigure}{0.4\textwidth}
    \includegraphics[width=\textwidth]{example-image}
    \caption{Second subfigure.}
    \label{fig:second}
\end{subfigure}
\hfill
\begin{subfigure}{0.4\textwidth}
    \includegraphics[width=\textwidth]{example-image}
    \caption{Third subfigure.}
    \label{fig:third}
\end{subfigure}
        
\caption{Creating subfigures in \LaTeX.}
\label{fig:figures}

\end{figure}

\end{document}

相关内容