Escribo un script en Python y genero un script de látex en el que se organizan varias imágenes usando \subcaption. Código central:
....
\usepackage{subcaption}
....
\begin{figure}
\begin{subfigure}[31]{0.2\textwidth}
\includegraphics[width = \textwidth, height = \textwidth]
{ly1_31.jpg}
\caption{Channel 31}
\label{fig: 31}
\end{subfigure}
\begin{subfigure}[97]{0.2\textwidth}
\includegraphics[width = \textwidth, height = \textwidth]
{ly1_97.jpg}
\caption{Channel 97}
\label{fig: 97}
\end{subfigure}
.......
\caption{ Features maps manually selected from 512 maps }
\label{fig}
\end{figure}
El código de las subfiguras es el mismo excepto el número de canal y el nombre del archivo generado por Python. Aquí tengo 14 imágenes .jpg. Y el ancho del espacio en blanco entre las imágenes en la última fila es obviamente más corto que las 3 filas anteriores (la última fila no está llena). ¿Cómo puedo controlar el ancho de ese espacio?
Y tampoco estoy seguro de si el ancho del espacio en blanco es la razón por la que lo configuro {0.2\textwidth}en la quinta línea y en líneas posteriores, pero solo obtengo 4 imágenes en una fila cuando la fila está llena (creo que sí, pero ¿alguna explicación detallada?)
La última pregunta es bastante extraña. Vea la captura de pantalla.

Hay una imagen que va al lugar equivocado (canal 227). Y estoy seguro de que no hay ningún "7b" en mi archivo tex. Todas las imágenes son del mismo tamaño. ¿Entonces, cuál es el problema?
Cualquier idea es bienvenida.
Respuesta1
Aquí hay un ejemplo mínimo que reproduce su problema:
\documentclass{article}
\usepackage{subcaption}
\usepackage{graphicx}
\begin{document}
\begin{figure}
\centering
\begin{subfigure}[31]{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}
\begin{subfigure}[227]{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-b}
\caption{Channel 227}\label{fig:227}
\end{subfigure}
\end{figure}
\end{document}
El error se debe a la sintaxis utilizada incorrectamente: el argumento opcional \begin{subfigure}debe ser unun solo carácter entre b,c o t.
Solución: elimine los bits incorrectos
\documentclass{article}
\usepackage{subcaption}
\usepackage{graphicx}
\begin{document}
\begin{figure}
\centering
\begin{subfigure}{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}
\begin{subfigure}{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-b}
\caption{Channel 227}\label{fig:227}
\end{subfigure}
\end{figure}
\end{document}
¿Lo que sucede?
El código for \begin{subfigure}busca si se proporciona un argumento opcional; de lo contrario, asume que lo es b; entonces hace código como
\if<optional argument>b%
<code when test returns true>%
\else
<code when test returns false>%
\fi
En este 227caso, el texto se convierte
\if227b
<code when test returns true>%
\else
<code when test returns false>%
\fi
y la prueba regresaverdaderoporque \ifcompara los siguientes dos tokens no expandibles, en este caso 2y 2. Por regla general, <true code>comienza justo después de la prueba y termina en \else(o \fisi no \elseaparece), por lo que en este caso también contiene 7b.
¿Cómo obtener cinco imágenes por fila sin espacio?
Debes eliminar el espacio entre dos subfiguras, generado por el final de línea después de \end{subfigure}.
Puedes aprovechar el hecho de que TeX elimina espacios después de las secuencias de control:
\documentclass{article}
\usepackage{subcaption}
\usepackage{graphicx}
\newcommand{\subfiguresep}{\hspace{0pt}}
\begin{document}
\begin{figure}
\centering
\begin{subfigure}{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{0.2\textwidth}
\includegraphics[width = \textwidth]{example-image-b}
\caption{Channel 227}\label{fig:227}
\end{subfigure}\subfiguresep
\end{figure}
\end{document}
Permite \hspace{0pt}un salto de línea, sin agregar espacios. Si prefiere que la última fila esté al ras a la izquierda, utilice \raggedrighten lugar de \centering.
Si quieres algo de espacio entre las subfiguras, puedes hacerlo.
\documentclass{article}
\usepackage{subcaption}
\usepackage{graphicx}
\newcommand{\subfiguresep}{\hspace{2pt}}
\captionsetup[subfigure]{font=footnotesize}
\begin{document}
\begin{figure}
\centering
\begin{subfigure}{\dimexpr 0.2\textwidth-8pt}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{\dimexpr 0.2\textwidth-8pt}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{\dimexpr 0.2\textwidth-8pt}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{\dimexpr 0.2\textwidth-8pt}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{\dimexpr 0.2\textwidth-8pt}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{\dimexpr 0.2\textwidth-8pt}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{\dimexpr 0.2\textwidth-8pt}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{\dimexpr 0.2\textwidth-8pt}
\includegraphics[width = \textwidth]{example-image-a}
\caption{Channel 31}\label{fig:31}
\end{subfigure}\subfiguresep
\begin{subfigure}{\dimexpr 0.2\textwidth-8pt}
\includegraphics[width = \textwidth]{example-image-b}
\caption{Channel 227}\label{fig:227}
\end{subfigure}\subfiguresep
\end{figure}
\end{document}
Tenga en cuenta que tuve que reducir el tamaño de fuente del subtítulo; de lo contrario, excedería el ancho de la imagen.






