3. LaTeX图片的排版、引用与格式_latex引用图片-程序员宅基地

技术标签: SUDA学术之路  latex  

3. LaTeX图片的排版、引用与格式

1.LaTeX 图片排版方式

  在 LaTex 排版的论文写作中,LaTex 的所有宏包文件都要写在 \documentclass 命令之后和 \begin{document} 之前。在本文中,图片排版时使用到的宏包文件有:

% 引言区
\documentclass[utf-8]{article}
\usepackage{ctex}      
\usepackage{graphicx}  %%  图片包
\usepackage{subfig}    %% 子图包
\usepackage{float}     %% 浮动个数

% 正文区
\begin{document}
...
\end{document}

在论文中主要有两种图片排版方式:图片的直接插入、图片的浮动插入

1、图片的直接插入会遵循文字的样式,会乖乖的限制在论文的某一侧(因为大多数英文期刊类的模板论文是分两栏的)。例如下面的图片:
在这里插入图片描述

2、图片的浮动插入会自己独占页面的一部分,剩下的部分留给文字。也就是将页面分为上下两个部分,例如下面的图片:

在这里插入图片描述


2. 图片的直接插入

直接插入图片的基本模板如下:

\begin{figure}[!t]
	\centering
	\includegraphics[width=5in]{myfigure}
	\caption{Simulation results for the network.}
	\label{fig_sim}
\end{figure}

我们将 myfigure 修改为图片路径,一般来说最简单的是将图片和 tex 文件放在同一个文件夹下,然后直接修改为图片名称+后缀即可:

在这里插入图片描述

\begin{document}

\begin{figure}[!h]
    \centering
    \includegraphics[width=5in]{LSTM.jpeg}
    \caption{LSTM内部信号传递原理}
    \label{fig:my_label}
\end{figure}

\end{document}

展示效果如下:

在这里插入图片描述

如果觉得所有的图片都堆到同一个文件夹下太乱了,我们可以创建一个专门放图片的文件夹,然后使用绝对路径或者相对路径(一般推荐使用相对路径)。例如:

在这里插入图片描述

内容修改为:

\begin{document}

\begin{figure}[!h]
    \centering
    \includegraphics[width=5in]{picture/LSTM.jpeg}
    \caption{LSTM内部信号传递原理}
    \label{fig:my_label}
\end{figure}

\end{document}

详细介绍上面单图直接插入基本模板的语法和参数:

1、基本框架

整体大框架明确了图片的开始(\begin)和结束(\end)的位置,figure 说明插入的是图片。[!h]是图片的摆放格式,表示图片要放在当前文字的下方(here)(IEEE tran 的期刊论文模板分两排)。

\begin{figure}[!h]

\end{figure}

图片主要有 4 种位置格式:

  1. [h] 当前位置(here):h 表示你在编写的时候中在哪里,论文最终显示图片的位置就在哪里,但是如果这一页的空间不足以放下这个图片,此时图片会转到下一页;
  2. [t] 顶端(top):t 表示优先将图片放置在页面对应排的顶部;
  3. [b] 底端(bottom):b 表示优先将图片放置在页面对应排的底部;
  4. [p] 浮动:将图片设置为浮动状态,系统会自动排版图片的位置;

2、居中显示

\centering

centering 顾名思义,表示将图片居中显示

3、图片及参数

\includegraphics[width=5in]{picture/LSTM.jpeg}

[ ]中存放的是图片的参数,width=5in 是图片的大小,in 是单位,含义是英寸。{ } 中就是图片的路径及名称,如果是同一个文件夹下,那么我们就可以省略路径。

4、标题

\caption{LSTM内部信号传递原理}

caption 是图像的标题。{ } 中就是标题的具体内容,标题还会有编号,一般都是自动编号。

5、标签

\label{fig:my_label}

标签主要是在文中引用的时候会用到。

6、单图的引用

图片的引用要用到命令 \ref,例如我们要引用上面标签的图片时,就可以这样调用:

As show in Figure \ref{fig:my_label}   %%  英文引用图片
正如图 \ref{fig:my_label}   %% 中文引用图片

命令大括号中的就是图片的标签,可以自定义,展示结果如下:

在这里插入图片描述

\begin{document}
LSTM是一种时间循环神经网络,是为了解决一般的RNN(循环神经网络)存在的长期依赖问题而专门设计出来的。
\begin{figure}[!h]
    \centering
    \includegraphics[width=4.5in]{picture/LSTM.jpeg}
    \caption{LSTM内部信号传递原理}
    \label{fig:my_label}
\end{figure}
如图 \ref{fig:my_label},
所有的RNN都具有一种重复神经网络模块的链式形式.
\end{document}

3. 图片的浮动插入

图片浮动插入的基本用法:

\begin{figure*}[!t]
    \centering
    \subfloat[Case I]{\includegraphics[width=2.5in]{box}
    \label{fig_first_case}}

    \hfil

    \subfloat[Case II]{\includegraphics[width=2.5in]{box}%
    \label{fig_second_case}}

    \caption{Simulation results for the network.}
    \label{fig_sim}
\end{figure*}

注意:上面的空行只是为了让大家更容易看清结构,实际写的时候一般不要添加空行,因为在LaTeX中空行会导致图片换行。如果你要求图片是不在同一行的,可以添加空行。

在这里插入图片描述

\begin{figure*}[!h]
    \centering
    \subfloat[Case I]{\includegraphics[width=1.5in]{picture/1.png} \label{X}}
    \hfill
    \subfloat[Case II]{\includegraphics[width=1.5in]{picture/2.png} \label{Y}}
    \hfill
    \subfloat[Case III]{\includegraphics[width=1.5in]{picture/3.png} \label{Z}}
    \caption{速度、流率与密度之间的关系}
    \label{fig:my_label1}
\end{figure*}

大家会发现,图片在页面的最中间,而不是顶端,如果论文中的文字足够多的适合,它自然会移动到最上面。

详细介绍图片浮动插入基本模板的语法和参数:

1、框架

\begin{figure*}[!t]    

\end{figure*}

整体大框架明确了图片的开始(\begin)和结束(\end)的位置,figure说明插入的是图片,*表示支持图片的全页面浮动。[!t]是图片的摆放格式,与上面一致。

2、居中显示

\centering

centering 表示将图片整体居中显示。

3、图片及参数

 \subfloat[Case I]{\includegraphics[width=1.5in]{picture/1.png} \label{X}}

subfloat 表示插入浮动子图,第一个 [ ] 中存放的是子图的标题,默认编号是 (a),(b)……。大括号里面的就是单图的格式,和上面相同。

4、hfill

\hfill

hfil 和 hfill 是一对,表示的是空格,起到填充的作用,能够让图片或其他模块类的东西不产生重叠。经常用在在图片或者其他模块之间的并排。我们也可以把hfil理解为跟踪式左对齐

5、标题

\caption{速度、流率与密度之间的关系}

caption是图像的标题。与前面的示例相同。

6、标签

\label{fig:my_label1}

标签主要是在引用的时候会用到。

7、多图的引用

图片的引用要用到命令 ref ,多图的引用分两种,一种是引用整体,另一种是引用某一个子图。

引用整体:如果我们要引用上面的整体图片,就使用整体的标签,可以这样调用:

As show in Figure \ref{fig:my_label1}

命令大括号中的就是整个图片的标签,执行结果如下:

在这里插入图片描述

引用子图:如果我们要调用某一个子图,就使用子图的标签,可以这样调用:

As show in Figure \ref{Z}

命令大括号中的就是子图的标签,执行结果如下:

在这里插入图片描述

但是大家发现了,子图的标签,括号没了,不如2(a)好看,怎么办呢?

我们可以先引用整体标签,然后单独引用子图标签,子图标签用到的命令是subref

As show in Figure \ref{fig:my_label1} \subref{Z}

在这里插入图片描述


4. 图片格式(拓展)

LaTex支持大量的图片格式,或者说我们常用的 jpg、png格式都是支持的,此外,LaTeX还支持PDF格式,不过需要引入额外的包。

总的来说,LaTeX 最常用的四种格式分别是:jpg、png、PDF、eps

eps 是 Encapsulated Post Script 的缩写,翻译过来是内嵌式 Post Script。eps文件格式又被称为带有预视图象的PS格式,它是由一个PostScript语言的文本文件和一个(可选)低分辨率的由 PICT 或 TIFF 格式描述的代表像组成。eps也是很多期刊要求的格式,主要有如下两个原因:

  1. 图片文字可选中;
  2. 清晰度高且存储较小;

首先,如果我们使用 Visio 或者 PPT 做的图,转化为PDF的时候,其中的文字是可选中的。如果我们将 PDF 转为 jpg 或者 png ,文字就不可选中了。但是 PDF 转为 eps 的时候,文字依然是可以选中的。

其次,eps 是矢量图,图像的清晰度很高,成像效果好。并且占用的存储空间相对较小。


说明:关于这一部分的PDF文档整理在百度网盘上。提取码:6666.

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_41775769/article/details/121400026

智能推荐

前端开发之vue-grid-layout的使用和实例-程序员宅基地

文章浏览阅读1.1w次,点赞7次,收藏34次。vue-grid-layout的使用、实例、遇到的问题和解决方案_vue-grid-layout

Power Apps-上传附件控件_powerapps点击按钮上传附件-程序员宅基地

文章浏览阅读218次。然后连接一个数据源,就会在下面自动产生一个添加附件的组件。把这个控件复制粘贴到页面里,就可以单独使用来上传了。插入一个“编辑”窗体。_powerapps点击按钮上传附件

C++ 面向对象(Object-Oriented)的特征 & 构造函数& 析构函数_"object(cnofd[\"ofdrender\"])十条"-程序员宅基地

文章浏览阅读264次。(1) Abstraction (抽象)(2) Polymorphism (多态)(3) Inheritance (继承)(4) Encapsulation (封装)_"object(cnofd[\"ofdrender\"])十条"

修改node_modules源码,并保存,使用patch-package打补丁,git提交代码后,所有人可以用到修改后的_修改 node_modules-程序员宅基地

文章浏览阅读133次。删除node_modules,重新npm install看是否成功。在 package.json 文件中的 scripts 中加入。修改你的第三方库的bug等。然后目录会多出一个目录文件。_修改 node_modules

【】kali--password:su的 Authentication failure问题,&sudo passwd root输入密码时Sorry, try again._password: su: authentication failure-程序员宅基地

文章浏览阅读883次。【代码】【】kali--password:su的 Authentication failure问题,&sudo passwd root输入密码时Sorry, try again._password: su: authentication failure

整理5个优秀的微信小程序开源项目_微信小程序开源模板-程序员宅基地

文章浏览阅读1w次,点赞13次,收藏97次。整理5个优秀的微信小程序开源项目。收集了微信小程序开发过程中会使用到的资料、问题以及第三方组件库。_微信小程序开源模板

随便推点

Centos7最简搭建NFS服务器_centos7 搭建nfs server-程序员宅基地

文章浏览阅读128次。Centos7最简搭建NFS服务器_centos7 搭建nfs server

Springboot整合Mybatis-Plus使用总结(mybatis 坑补充)_mybaitis-plus ruledataobjectattributemapper' and '-程序员宅基地

文章浏览阅读1.2k次,点赞2次,收藏3次。前言mybatis在持久层框架中还是比较火的,一般项目都是基于ssm。虽然mybatis可以直接在xml中通过SQL语句操作数据库,很是灵活。但正其操作都要通过SQL语句进行,就必须写大量的xml文件,很是麻烦。mybatis-plus就很好的解决了这个问题。..._mybaitis-plus ruledataobjectattributemapper' and 'com.picc.rule.management.d

EECE 1080C / Programming for ECESummer 2022 Laboratory 4: Global Functions Practice_eece1080c-程序员宅基地

文章浏览阅读325次。EECE 1080C / Programming for ECESummer 2022Laboratory 4: Global Functions PracticePlagiarism will not be tolerated:Topics covered:function creation and call statements (emphasis on global functions)Objective:To practice program development b_eece1080c

洛谷p4777 【模板】扩展中国剩余定理-程序员宅基地

文章浏览阅读53次。被同机房早就1年前就学过的东西我现在才学,wtcl。设要求的数为\(x\)。设当前处理到第\(k\)个同余式,设\(M = LCM ^ {k - 1} _ {i - 1}\) ,前\(k - 1\)个的通解就是\(x + i * M\)。那么其实第\(k\)个来说,其实就是求一个\(y\)使得\(x + y * M ≡ a_k(mod b_k)\)转化一下就是\(y * M ...

android 退出应用没有走ondestory方法,[Android基础论]为何Activity退出之后,系统没有调用onDestroy方法?...-程序员宅基地

文章浏览阅读1.3k次。首先,问题是如何出现的?晚上复查代码,发现一个activity没有调用自己的ondestroy方法我表示非常的费解,于是我检查了下代码。发现再finish代码之后接了如下代码finish();System.exit(0);//这就是罪魁祸首为什么这样写会出现问题System.exit(0);////看一下函数的原型public static void exit (int code)//Added ..._android 手动杀死app,activity不执行ondestroy

SylixOS快问快答_select函数 导致堆栈溢出 sylixos-程序员宅基地

文章浏览阅读894次。Q: SylixOS 版权是什么形式, 是否分为<开发版税>和<运行时版税>.A: SylixOS 是开源并免费的操作系统, 支持 BSD/GPL 协议(GPL 版本暂未确定). 没有任何的运行时版税. 您可以用她来做任何 您喜欢做的项目. 也可以修改 SylixOS 的源代码, 不需要支付任何费用. 当然笔者希望您可以将使用 SylixOS 开发的项目 (不需要开源)或对 SylixOS 源码的修改及时告知笔者.需要指出: SylixOS 本身仅是笔者用来提升自己水平而开发的_select函数 导致堆栈溢出 sylixos

推荐文章

热门文章

相关标签