前言
我有预感,这会是一个要写很长时间的博文,我可能会需要几周的时间来把它补全,使之成为一个非常完备的LaTex实验报告教程,LaTex的资料在网上有很多,但是除了写论文以外,我们还可以用它来博取实验老师的欢心(划掉)。请注意一篇完美的实验报告不仅需要有用的实验内容和结果,也同样需要简洁美观大方的排版,用LaTex可以轻松地达到这个目的。
笔者是一个在极简主义和极繁主义之间来回跳动的人,喜欢极简的设计风格,但在完成所谓“简单实验报告”时又想要追求极致的排版和构成。
一篇实验报告的组成
常见的实验报告包括几个要素,无论是理科类的实验,还是工科类的实验,无外乎都有一些必要的组成成分和一些加分项。
Essential components
一个实验报告需要的必须组件有以下几条:
- 实验概述
- 实验内容
- 实验结论
- 支撑材料
实验概述
不必多说,主要就是介绍这个实验需要完成的任务以及基本的实验思路,最好简单地再提一下实验结果如何。下图为一个简单的示例:

实验内容
实验内容可以说的就比较多,可以分为几个小标题,描述做了几个小实验(许多实验报告的任务都不是单个简单过程,会有明显的需要分布完成的小实验),还可以分一些标题来描述整体的思路,比如计算机软件类的实验,如果涉及到写代码就可以绘制流程图。
实验结论
不是所有实验都一定要有实验结论,因为计算机类的许多实验可能只是需要你掌握某个语法或者软件的使用,不一定需要一个结论。
但是如果有数值计算方面的需要,则一定要有一个实验结论来进行总结。
支撑材料
实验过程中的照片,截图,数据表,代码文件等,都属于支撑材料,最好像这样写一个附件目录。

然后将附件直接接在文档的最后,或者附在报告所在的压缩包中。老师或者批改的助教不一定会仔细看你的附件代码,但是这个只是以防万一,如果你的实验结论有误,或者你的实验内容写的不够详细,附件就能起到支撑结论的作用。
Optional components
可视化图表
在我写报告两年的经验里,我认为最最能提高报告含金量的东西就是:🌟数据可视化🌟
但是可视化并非易事,并不是简单的excel画个折线图,柱形图,选择什么样的图表可以让你的报告更加清晰地呈现出你的实验成果。比如java实验报告就要画UML图,普通算法题可以画流程图……
这里推荐一个画图神器:draw.io
自动化计算数据手段
其实这个门槛倒不是很高,python很适合用于自动生成大量测试数据,以及自动计算数据。这个可以自己摸索啦。
美丽的排版之神----LaTex
终于引入主题:LaTex。本人终于要激动地宣布,尝试过那么多种写作工具,在实验报告这个赛道上,LaTex才是唯一的神!
markdown语言虽然很简单易上手,但是在面对实验报告的任务时还是显得有些不是那么专业对口,因为md文档主要是面向程序文档的工具,虽然有诸如mathjax这样的插入公式的工具,且在语法高亮这个方面兼容性强,但是他的开发初衷毕竟是弱化格式注重内容,只保留了最基本的样式,在应对像实验报告这种需要一定美观性的任务显得有些力不从心。
word其实也是一个很好用的工具,但把word用好的门槛并不低,尤其是当你需要非常便捷的目录编码时,word就显得更不好用了,如果你只是需要一个简洁美观的排版工具,那么LaTex是你的最佳选择。(唯一缺点是需要一点点的门槛)
用Overleaf快速上手Latex
关于LaTex,在bilibili有许多速成课,这里我只教一些bilibili不教的。
如何使用中文
只需在document体前面使用xeCJK宏包。但要记得在菜单栏里,把Compiler换成XeLaTex。
1 | \usepackage{xeCJK} |
如何插入代码块并对其高亮
1 | \usepackage{listings} |
如何插入图片并调整细节
细节包括:
- 调整大小
- 添加心仪格式的题注
比如,插入一张这样的图片,需要这些代码:

1 | \usepackage{graphicx} % Required for inserting images |
如何使行距变大
这是latex默认的行距,英文看着还好点,中文实在是有点挤,我们来调整一下。

1 | \linespread{1.5} |
如此,将行距调整为1.5倍,看起来就舒服多了。
如何使段落之间隔开一些距离
1 | \usepackage{parskip} |
使用这个宏包的效果是取消段落的首行缩进,然后增加段落间距的。