Latex中子图排列出现的一些问题

在这里插入图片描述

\usepackage{subfigure}
\usepackage{subfig,graphicx}

\begin{figure} [t!]
 		\centering
 		\subfloat[\label{fig:a}]{
 			\includegraphics[scale=0.17]{10_0.PNG}}
 		\subfloat[\label{fig:c}]{
 			\includegraphics[scale=0.17]{10_0.PNG}}
 		\subfloat[\label{fig:e}]{
 			\includegraphics[scale=0.17]{10_0.PNG}}
 		\\
 		\subfloat[\label{fig:b}]{
 			\includegraphics[scale=0.17]{10_0.PNG}}
 		\subfloat[\label{fig:d}]{
 			\includegraphics[scale=0.17]{10_0.PNG}}
 		\subfloat[\label{fig:f}]{
 			\includegraphics[scale=0.17]{10_0.PNG}}
 		\caption{The MFCVs in silico under BC when the amplitudes of the simulated signals a) don't meet~; b) meet~. The spade suit symbol ($\spadesuit$) means calculation with z-score normalization. The blue dotted line represents the theoretical CV value (3.64m/s). }
 		\label{fig3} 
 	\end{figure}
'''
由于同时调用了
usepackage{subfigure}
\usepackage{graphicx}
报错
latex  minipage No counter 'subfigure@save' defined. ^^I^^I\subfloat
'''

去掉子图编号

	\begin{figure}[t!]
 		\centering
 		%\hspace{0.15}
 		\subfloat{
 			\includegraphics[scale=0.32]{10_0.PNG}}
 		\subfloat{
 			\includegraphics[scale=0.32]{10_0.PNG}}
 		\subfloat{
 			\includegraphics[scale=0.32]{10_0.PNG}}
 		\subfloat{
 			\includegraphics[scale=0.32]{10_0.PNG}}
 		\\
 		\subfloat{
 			\includegraphics[scale=0.17]{10_0.PNG}}
 		\subfloat{
 			\includegraphics[scale=0.17]{10_0.PNG}}
 		\subfloat{
 			\includegraphics[scale=0.17]{10_0.PNG}}
 		\subfloat{
 			\includegraphics[scale=0.17]{10_0.PNG}}
 		\caption{The MFCVs in silico under BC when the amplitudes of the simulated signals a) don't meet~; b) meet~. The spade suit symbol ($\spadesuit$) means calculation with z-score normalization. The blue dotted line represents the theoretical CV value (3.64m/s). }
 		\label{fig3} 
 	\end{figure}

可以通过以下程序设置多行多列的图

\begin{figure}[htbp]   % * 表示忽略单行
	  	\centering
	  	\begin{minipage}{1.\textwidth}
	  		\centering
	  		%\hspace{-0.8cm}%距离左边距的距离
	  		\subfloat[fog1]{\includegraphics[width=0.248\textwidth]{10_0.PNG}}
	  		\hspace{-1.3cm} % 调整两个子图之间的间距,否则会(a)(b)两个子图会紧挨在一起
	  		\subfloat[fog2]{\includegraphics[width=0.248\textwidth]{10_0.PNG}}
	  		%\caption{fog}
	  		\hspace{-1.5cm} % 调整两个子图之间的间距,否则会(a)(b)两个子图会紧挨在一起
	  		\subfloat[fog1]{\includegraphics[width=0.248\textwidth]{10_0.PNG}}
	  		\hspace{-1.5cm} % 调整两个子图之间的间距,否则会(a)(b)两个子图会紧挨在一起
	  		\subfloat[fog2]{\includegraphics[width=0.248\textwidth]{10_0.PNG}}
	  	\end{minipage}
	  \end{figure}

但是通过使用我们的图片,出现了一个问题,
在Python中使用命令plt.savefig()保存图片后得到如下一张图片
在这里插入图片描述

但是需要注意观察,该图片的大小还包括周围的白色背景部分,如果我们直接复制
在这里插入图片描述

白色背景部分会变得更小。
如果使用前一张图片在Latex中,加入排列为4X4则会出现一个大问题,无法排列,图片重合,叠加问题等出现。因此最好是直接复制图片或解决白色背景部分问题
或者添加命令

plt.savefig('Test',dpi=200, bbox_inches='tight')

1、如何插入多个图片及子图片(subfigure)https://blog.csdn.net/weixin_43663809/article/details/124129672

2、latex 画图子图排布、编号
https://zhuanlan.zhihu.com/p/414859221

3、https://tex.stackexchange.com/questions/439970/no-counter-subfiguresave-defined-this-error-appear-when-subfloat-command
在这里插入图片描述

4、LaTeX subfloat 子图 不显示标号https://blog.csdn.net/baishuiniyaonulia/article/details/127423537

5、Latex之subfighttps://zhuanlan.zhihu.com/p/142563819

我们在用latex写文章的时候经常需要排列多张图片,许多教程给出的方法是使用subfigure包,但是这个包太老了,有些需要自定义的功能无法实现。如果subfigure足以满足你的需求,就用subfigure吧,毕竟网上给出的教程还挺多的。如果还不够的话,可能就需要subfig这个包了。我自己是因为子标题的编号的问题而用到了这个包,下面简单来说一下这个用法吧。

\usepackage{graphicx}

\usepackage[caption=false,farskip=0pt,labelfont={bf}]{subfig} % []里面的内容是我使用这个包设置的参数,大家使用时可以不加这些。



\begin{figure*} % 加上*, 如果是双栏会合并成单栏显示图片

\captionsetup[subfigure]{margin=120pt} % 设置子标题编号的位置是120pt

\subfloat[]{

\label{fig2a} % 子图1的标签,便于后面引用

\includegraphics[width=0.45\linewidth]{Fig2(a).eps}}

\hspace{.4in} % 两图之间的横向距离,纵向距离使用vspace

\subfloat[]{

\label{fig2b}

\includegraphics[width=0.45\linewidth]{Fig2(b).eps}}

\caption{write your caption}

\label{fig2} % 整张图的标签

\end{figure*}

我改变的margin就是下图中的距离,默认是0pt,一般情况下不需要更改这个。

6、在这里插入图片描述
在这里插入图片描述
https://links.jianshu.com/go?to=https%3A%2F%2Fliam.page%2F2018%2F01%2F11%2Ffloats-in-LaTeX-multiple-elements-in-a-single-float%2F

6、编译LaTex报错:Missing number, treated as zero.
Google了一下,发现官网给出了解释:https://www.overleaf.com/learn/latex/Errors/Illegal_unit_of_measure_(pt_inserted)
经过对照,原因就是使用的包subfigure比较老,\begin{subfigure}{0.32\textwidth}这样的写法就会报错。将\usepackage{subfigure}改为\usepackage{subcaption}即可。

7、Latex 两栏4张图片 | 一栏多图独立标
https://blog.csdn.net/qq_40476619/article/details/126130036

\usepackage{subfig}
\usepackage{subfigure}
\usepackage{subcaption}
这三个命令不可同时调用,由于网上很多关于subfigure比较古老,对此以后就是用subfig或subcaption。
因为在在这两个包中定义了
\subfloat
这个命令,如果没使用这两个其中之一,则直接报错
————————————————
代码中用的包是subfigure(对应的子图指令是 \subfigure),这是一个基本要被淘汰的包,更好的选subfig(对应的子图命令是\subfloat) 或者caption. // 三个包相互冲突,只能选一个。
————————————————
minipage:分割一栏的空间。他是用{}里的宽度来控制的,我这里1\linewidth表示占满一栏。这里我用了两个minipage,这样它就会默认换行。
一个minipage环境中的两个子图,\subfigure 图片的宽度不能都设置为0.5,要留有一点空白。
————————————————
如果用的subfig包,所以这里子图的指令是\subfloat[ ]{ },我觉得比subfigure好用些

第一个minipage的宽度是0.65,它下面两个子图分别是0.48,另外一个minipage是0.312,这样是因为:0.65*0.48=0.312,这样图片的宽度就是一样的,当然你可以自己调整;
minipage分割一栏的空间,在这个空间里面:子图想要成左右关系,设置的宽度之和就不要超过1,否则一栏放不下!!如果想要成上下关系,那么设置的宽度之和超过1就行了,比如0.8\linewidth 和0.8\linewidth.
\hspace是调整子图的水平距离;subfloat设置的子图,如果不加水平距离,会紧挨着。
\vspace可以调整子图的垂直距离;\vskip也可以(好像效果更好)。
如果是引用子图,Fig. 1(a) 这样的形式,得在导言区这么改

minipage下可以添加多张图片,我们可以在\subfloat[]后添加子标题
我们也可以在minipage中仅放一张图片,使用4个minipage就可以得到如下
对于每一个minipage可以使用命令\caption{chutian1}和\label{chutian1}来添加标题和标签

\begin{minipage}{1.\textwidth}
	  		\centering
	  		%\hspace{-0.8cm}%距离左边距的距离
	  		\subfloat{\includegraphics[width=0.248\textwidth]{1.PNG}}
	  		\hspace{-0.2cm} % 调整两个子图之间的间距,否则会(a)(b)两个子图会紧挨在一起
	  		\subfloat{\includegraphics[width=0.248\textwidth]{2.PNG}}
	  		%\caption{fog}
	  		\hspace{-0.2cm} % 调整两个子图之间的间距,否则会(a)(b)两个子图会紧挨在一起
	  		\subfloat{\includegraphics[width=0.248\textwidth]{3.PNG}}
	  		\hspace{-0.2cm} % 调整两个子图之间的间距,否则会(a)(b)两个子图会紧挨在一起
	  		\subfloat{\includegraphics[width=0.248\textwidth]{4.PNG}}
	  	\end{minipage}
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在LaTeX实现四行四列的图片排列,可以使用宏包\verb|subfigure|和\verb|minipage|。以下是一种实现的方式: \begin{verbatim} \documentclass{article} \usepackage{graphicx} \usepackage{subcaption} \begin{document} \begin{figure} \centering \begin{subfigure}[b]{0.22\linewidth} \includegraphics[width=\linewidth]{image1} \caption{图像1} \end{subfigure} \begin{subfigure}[b]{0.22\linewidth} \includegraphics[width=\linewidth]{image2} \caption{图像2} \end{subfigure} \begin{subfigure}[b]{0.22\linewidth} \includegraphics[width=\linewidth]{image3} \caption{图像3} \end{subfigure} \begin{subfigure}[b]{0.22\linewidth} \includegraphics[width=\linewidth]{image4} \caption{图像4} \end{subfigure} \begin{subfigure}[b]{0.22\linewidth} \includegraphics[width=\linewidth]{image5} \caption{图像5} \end{subfigure} \begin{subfigure}[b]{0.22\linewidth} \includegraphics[width=\linewidth]{image6} \caption{图像6} \end{subfigure} \begin{subfigure}[b]{0.22\linewidth} \includegraphics[width=\linewidth]{image7} \caption{图像7} \end{subfigure} \begin{subfigure}[b]{0.22\linewidth} \includegraphics[width=\linewidth]{image8} \caption{图像8} \end{subfigure} \caption{四行四列图片排列示例} \end{figure} \end{document} \end{verbatim} 需要注意的是,上面的代码\verb|image1|至\verb|image8|是需要替换成实际图片的文件名。此外,可以调整\verb|subfigure|环境的\verb|b|选项和\verb|minipage|环境的\verb|0.22\linewidth|值来控制图片的垂直对齐和水平间距。最后,使用\verb|\caption|命令为每个子图添加标题,并给整个图表添加一个总标题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值