用Latex写论文时如何简单方便地插入图片、表格和公式

2024-08-26 14:32

本文主要是介绍用Latex写论文时如何简单方便地插入图片、表格和公式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

使用Latex写论文,最大的优点主要有两个:1)可以利用代码方便地编辑公式;2)插入图表、公式不需要自己费心思排版,可以避免word插入图片的各种格式问题,另外也可以像word一样,无需手动对图表和公式编号。第一个优点自不必说,我们平常使用Markdown写博客的时候,也会直接利用Latex语法编辑公式。下面主要介绍Latex的第二个优点。

一、插入图片

在这一部分,需要导入两个宏包:\usepackage{graphicx}\usepackage{subfigure}。前者用于插入单张图片,后者用于插入子图。

1、插入单张图片
\begin{figure}[htb!]
\vspace{-2mm}  %设置与上文的水平间距。
\begin{center}
\includegraphics[width=150mm]{fig.eps} %width=**mm:设置图片宽度(高度等比例缩放),fig.eps:插入图片的名字(可以插入.png,.jpg,.pdf等格式)
\figurecaption{这里是图注} %图注
\label{figure1}  %这就是图片名字,用来在正文中引用图片
\end{center}
\vspace{-5mm}  %设置与上文的水平间距。
\end{figure}

显示效果如下:
在这里插入图片描述

2、插入多张图片,多行多列排列
\begin{figure}[htb!]
%\vspace{-2mm}
\begin{center}
\setlength{\abovecaptionskip}{0pt}\subfigure[子图图注1]{
\includegraphics[width=70mm]{fig1.pdf}
%\caption{fig1}
}
\quad
\hspace{-7mm}
\subfigure[子图图注2]{
\includegraphics[width=70mm]{fig2.pdf}
}
\quad
\subfigure[子图图注3]{
\includegraphics[width=70mm]{fig3.pdf}
}
\quad
\hspace{-7mm}
\subfigure[子图图注4]{
\includegraphics[width=70mm]{fig4.pdf}
}
\figurecaption{这里是整体图注}
\label{figure2}
\end{center}
%\vspace{-5mm}
\end{figure}

显示效果如下:
在这里插入图片描述

二、插入表格

1、常用的三线表
\begin{table}
\tabcolsep 0pt
\caption{表格标题}  %这里写表格标题
\label{table1}  %表格名字,用于正文中引用表格
\begin{center}
\def\temptablewidth{1\textwidth}
{\rule{\temptablewidth}{1pt}}
\begin{tabular*}{\temptablewidth}{@{\extracolsep{\fill}}cccc}
& \textbf{表头1} & \textbf{表头2} &  \\   \hline   %\textbf{表头三} &
& a & 77.54\% &  \\
& b & 72.71\% &  \\
&c & 90.27\%  & \\
& d & 88.23\% &  \\
\end{tabular*}
{\rule{\temptablewidth}{1pt}}
\end{center}
\end{table}

显示效果如下:
在这里插入图片描述

2、内含合并单元格的表格

在上述三线表使用的过程中,发现如果合并单元格之后,会出现排版错乱,文字不居中等问题,这里找到了另一个种可以手动调整大小的表格。

当然,在合并表格单元格之前,需要导入一个latex包:\usepackage{multirow}

接下来是表格模板:

\begin{table}
%\tabcolsep 0pt
\caption{复杂的表}
%\vspace*{0pt}
\begin{center}
\def\temptablewidth{1\textwidth}
{\rule{\temptablewidth}{1pt}}
\setlength{\tabcolsep}{4mm}
%\begin{tabular*}{\temptablewidth}{@{\extracolsep{\fill}}c|c|c|c|c|c}
\begin{tabular}{c|c|c|c|c|c}
\multirow{2}{*}{\textbf{表头2}} & \multirow{2}{*}{\textbf{表头3}} &\multicolumn{2}{c|}{\textbf{表头4}}&\multicolumn{2}{c}{\textbf{表头5}}  \\  \cline{3-6}
&& P & R  & P & R  \\\hline4 & 32 & 99\% & 99\% & 99\% & 96\% \\\hline6 & 18 & 99\% & 98\% & 99\% & 95\% \\\hline7 & 18 & 99\% & 98\% & 99\% & 95\% \\\hline9 & 11 & 99\% & 98\% & 99\% & 93\%  \\
\end{tabular}
{\rule{\temptablewidth}{1pt}}
\end{center}
\label{table2}
\end{table}

在上述模板中,\setlength{\tabcolsep}{4mm}这条语句可以调整表格的整体宽度,\multirow{n}{*}{内容}代表纵向合并单元格,\multicolumn{n}{c}{内容}代表横向合并单元格,n为合并单元格的行数或列数 。

显示效果如下,可以根据自己的具体情况进行调整:
在这里插入图片描述

三、插入公式

\begin{align}
\label{eq1}CReLU(x) = [ReLU(x),ReLU(-x)]  ,
\end{align}

显示效果如下:
在这里插入图片描述

四、图片和表格的引用

对于插入的图表,我们只需要给图表起一个名字,然后利用代码:\ref{图表名} 引用对应的图表即可,在排版的时候latex会自动给图表排序。比如,我们把以上描述的图和表在正文里引用:

插入单个图如图\ref{figure1}所示,插入多行多列图如图\ref{figure2}所示,插入普通三线表如表\ref{table1}所示,插入复杂的表格如表\ref{table2}所示,插入公式如\ref{eq1}所示。

注意,这里需要运行两遍代码才能正常显示图片的编号。

显示效果如下:

在这里插入图片描述

五、总结

学习Latex,没必要从零开始,学会每个代码的含义再用,有时甚至不需要纠结每一行代码的含义,最好的方式就是网上搜索到实现具体功能的代码,然后放在ctex编译器里慢慢调整。对于复杂的功能尤其如此。

比如我需要一个表格,直接搜索三线表的Latex代码,然后慢慢调整成自己需要的大小。

所以,本文以模板的形式提供了图和表的编辑代码,便于自己和他人复制使用。

六、附:Latex的一些基本代码

  1. \vspace*{0pt}\hspace*{0pt}:分别是调整内容的水平间距和垂直间距的。适用于图片、图表、文本等所有内容。
  2. \textbf{加粗文字}:把大括号里的文字加粗。

扩展阅读

  1. Latex中插入多张图片,实现并排排列或者多行多列排列

这篇关于用Latex写论文时如何简单方便地插入图片、表格和公式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1108833

相关文章

uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)

《uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)》在uni-app开发中,文件上传和图片处理是很常见的需求,但也经常会遇到各种问题,下面:本文主要介绍uni-app小程序项目中实... 目录方式一:使用<canvas>实现图片压缩(推荐,兼容性好)示例代码(小程序平台):方式二:使用uni

Python实现简单封装网络请求的示例详解

《Python实现简单封装网络请求的示例详解》这篇文章主要为大家详细介绍了Python实现简单封装网络请求的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录安装依赖核心功能说明1. 类与方法概览2.NetHelper类初始化参数3.ApiResponse类属性与方法使用实

Java利用Spire.XLS for Java设置Excel表格边框

《Java利用Spire.XLSforJava设置Excel表格边框》在日常的业务报表和数据处理中,Excel表格的美观性和可读性至关重要,本文将深入探讨如何利用Spire.XLSforJava库... 目录Spire.XLS for Java 简介与安装Maven 依赖配置手动安装 JAR 包核心API介

Android实现图片浏览功能的示例详解(附带源码)

《Android实现图片浏览功能的示例详解(附带源码)》在许多应用中,都需要展示图片并支持用户进行浏览,本文主要为大家介绍了如何通过Android实现图片浏览功能,感兴趣的小伙伴可以跟随小编一起学习一... 目录一、项目背景详细介绍二、项目需求详细介绍三、相关技术详细介绍四、实现思路详细介绍五、完整实现代码

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

Java实现将HTML文件与字符串转换为图片

《Java实现将HTML文件与字符串转换为图片》在Java开发中,我们经常会遇到将HTML内容转换为图片的需求,本文小编就来和大家详细讲讲如何使用FreeSpire.DocforJava库来实现这一功... 目录前言核心实现:html 转图片完整代码场景 1:转换本地 HTML 文件为图片场景 2:转换 H

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

基于C#实现PDF转图片的详细教程

《基于C#实现PDF转图片的详细教程》在数字化办公场景中,PDF文件的可视化处理需求日益增长,本文将围绕Spire.PDFfor.NET这一工具,详解如何通过C#将PDF转换为JPG、PNG等主流图片... 目录引言一、组件部署二、快速入门:PDF 转图片的核心 C# 代码三、分辨率设置 - 清晰度的决定因

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

Python从Word文档中提取图片并生成PPT的操作代码

《Python从Word文档中提取图片并生成PPT的操作代码》在日常办公场景中,我们经常需要从Word文档中提取图片,并将这些图片整理到PowerPoint幻灯片中,手动完成这一任务既耗时又容易出错,... 目录引言背景与需求解决方案概述代码解析代码核心逻辑说明总结引言在日常办公场景中,我们经常需要从 W