我需要一张 scientifix 论文的子图 (2x2)!这些图是在 matplotlib.pyplot (pdf, figsize=(14, 7)) 中制作的。每个子图下应该有一个标签 (a)、(b)、(c)、(d)。
我想以某种方式缩放它们,以便子图覆盖整个宽度。
如果你能帮助我(或给我提供一个模板/链接)那就太好了:)
答案1
以下是一些建议(无特定顺序):
使用
figure*
环境跨越两列文本。使用
subfigure
环境来包裹图形和相关标题。选择子图的宽度以满足您的偏好和要求。(对于下面的代码,我假设四个图形存储在名为a.pdf
、b.pdf
和c.pdf
的文件中d.pdf
。)使用另一个
\caption
命令来描述图形的整体内容。
% Select '5p' or '3p' option according to your journal's requirements.
% Omit the 'demo' option in real document.
\documentclass[3p,twocolumn,demo]{elsarticle}
\usepackage{lipsum} % "\lipsum" for filler text
\usepackage{graphicx} % for "\includegraphics" macro
\usepackage{subcaption}% for "subfigure" environment
\begin{document}
\lipsum[1-3] % filler text
\begin{figure*} % spans both columns
\begin{subfigure}{0.45\textwidth}
\includegraphics[width=\linewidth]{a.pdf}
\caption{Network 1}
\end{subfigure}
\hfill % maximize the horizontal distance between the graphs
\begin{subfigure}{0.45\textwidth}
\includegraphics[width=\linewidth]{b.pdf}
\caption{Network 2}
\end{subfigure}
\bigskip % some extra vertical whitespace
\begin{subfigure}{0.45\textwidth}
\includegraphics[width=\linewidth]{c.pdf}
\caption{Network 3}
\end{subfigure}
\hfill % maximize the horizontal distance between the graphs
\begin{subfigure}{0.45\textwidth}
\includegraphics[width=\linewidth]{d.pdf}
\caption{Network 4}
\end{subfigure}
\caption{Averages and standard deviations} % Overall figure caption
\end{figure*}
\lipsum[4-17] % more filler text
\end{document}