使用子图将两张图片并排添加

使用子图将两张图片并排添加

我正在努力将两张图片放在一起。它们与下面的 a) 和 b) 不对齐,并且倾向于与页面上的其他内容重叠。

图像以非常非常小的尺寸对齐,但当我增加尺寸时,它们会移出页面(向右)。我通过将 (width=.002\textwidth) 中的值增加到例如 (width=.005\textwidth) 来增加尺寸

当我增加(width=.002\textwidth)时,图像会离开页面右侧

我的代码:

\documentclass[english, a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[parfill]{parskip}
\usepackage{graphicx}
\usepackage{graphics}
\usepackage{tabularx}
\usepackage{amsmath,amssymb}                
\usepackage{mathtools}
\usepackage{siunitx}                
\sisetup{exponent-product = \cdot}          
\sisetup{separate-uncertainty = true}       
\usepackage{booktabs}                           
\usepackage[font=small,labelfont=bf]{caption}
\usepackage{chemformula}
\usepackage{mathrsfs}
\usepackage{subcaption}
\usepackage{wrapfig}
\usepackage[nottoc]{tocbibind}
\usepackage{pdfpages}
\usepackage{gensymb}
\usepackage{float}
\usepackage[version=4]{mhchem}
\bibliographystyle{unsrt}
\usepackage[biblabel]{cite}
\usepackage{hyperref}
\begin{document}

\begin{figure}[h!]
 \begin{subfigure}{.5\linewidth}
  \centering
  \includegraphics[width=.002\textwidth]{Fig/Results/19x.png}
  \caption{1a}
  \label{fig:sfig1}
 \end{subfigure}
 \begin{subfigure}{.5\linewidth}
  \centering
  \includegraphics[width=.002\textwidth]{Fig/Results/8x.png}
  \caption{1b}
  \label{fig:sfig2}
 \end{subfigure}
\caption{plots of....}
\label{fig:figkijbn}
\end{figure} 

答案1

  • 我无法说出您真正需要哪些包,这取决于文档内容。
  • 序言中不需要的包是graphics(loaded by graphicx) 和amsmath(loaded by mathtools)
  • 因为我没有你的图片,所以我使用demo包的选项graphicx。有了它们,你的代码就可以按预期工作
  • 图像的宽度由环境的宽度合理决定subfigure(请参阅下面的 mwe)

mwe(最小工作示例):

\documentclass[english, a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{mathrsfs}
%\usepackage[parfill]{parskip}
\usepackage[demo]{graphicx}
% \usepackage{graphics}
\usepackage{booktabs, tabularx}
\usepackage{mathtools, amssymb}
\usepackage{siunitx}
\sisetup{exponent-product = \cdot,
         separate-uncertainty = true}
\usepackage[font=small,labelfont=bf]{caption}
\usepackage{subcaption}
\usepackage{wrapfig}
\usepackage[nottoc]{tocbibind}
\usepackage{pdfpages}
\usepackage{gensymb}
%\usepackage{float}
%\usepackage{chemformula}
\usepackage[version=4]{mhchem}
\bibliographystyle{unsrt}
\usepackage[biblabel]{cite}
\usepackage{hyperref}

%-------------------------------------- only for show page layout
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.25pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%

\begin{document}
    \begin{figure}[h!]
\centering
    \begin{subfigure}{.48\linewidth}
    \includegraphics[width=\linewidth]{Fig/Results/19x.png}
    \caption{1a}
    \label{fig:sfig1}
    \end{subfigure}
    \hfill
    \begin{subfigure}{.48\linewidth}
    \includegraphics[width=\linewidth]{Fig/Results/8x.png}
    \caption{1b}
    \label{fig:sfig2}
    \end{subfigure}
\caption{plots of....}
\label{fig:figkijbn}
    \end{figure}
\end{document}

在此处输入图片描述

(红线表示文本区域边框)

如果此文档无法与您的原始图像配合使用,则表明它们存在一些故障。

答案2

问题出在 png 图像上。我在 Paint.Net 中编辑了图像,但结果无法在 Latex 中使用。将其调整为较小的分辨率,没有效果。将图像更改为 jpeg 也不起作用。

通过 Facebook 发送给朋友后,它成功了。Facebook 压缩版本可以运行,但原始版本不行。图像数据有问题,导致它在图像查看器中看起来完美无缺,但在 LaTeX 中却有问题。

我不确定图片出了什么问题。我发现另一个问题,有人和我遇到了类似的问题,他说分辨率是 3500000/10000,而不是 350/1,他的意思是这就是问题的根源。他通过使用 ImageMagick 的 -verbose 函数找到了这个问题(我不知道这个程序)

相关内容