TikZ

TikZ 作为 LaTeX 绘图宏包的特点、优势与适用场景说明

#status / evergreen #type / resource

[!info] related notes LaTeX

TikZ

TikZ(通常读作 “ticks”)是 LaTeX 生态中最强大、最著名的绘图宏包。它的全称是一个有趣的递归缩写:“TikZ ist kein Zeichenprogramm”(德语,意思是“TikZ 不是一个绘图程序”)。

这句玩笑话点出了它的核心本质:它是用代码来“编程绘图”,而不是用鼠标拖拽。

核心特点与优势

  1. 绝对的像素级控制力 在 TikZ 中,图表的每一个元素(节点、连线、大括号、文本)都由坐标和几何指令精确控制。你可以使用数学公式、循环语句(For-loops)甚至条件判断来批量生成复杂的图形结构。这对于画严谨的系统架构图、神经网络拓扑图或时序图来说,是无可匹敌的。

  2. 与学术论文的完美融合 如果你用 LaTeX 写论文,TikZ 生成的图表是原生编译进 PDF 的。这意味着:图表中的字体、字号会和你的正文完全一致;图表永远是最高质量的纯矢量图,无论放大多少倍都不会模糊。

  3. 纯文本,利于版本控制 因为图表本身就是一段代码,你可以像管理前端项目代码一样,用 Git 来管理你的图表修改历史。

一个直观的代码对比

如果你想画一个简单的圆,并在中间写上文字,TikZ 的逻辑是这样的:

\begin{tikzpicture}
  % 在坐标 (0,0) 画一个半径 1cm 的圆
  \draw (0,0) circle (1cm);
  % 在坐标 (0,0) 放置一个文本节点
  \node at (0,0) {核心};
\end{tikzpicture}

真实的痛点(Candor)

虽然 TikZ 画出来的图极具学术美感,但它的学习曲线非常陡峭。它的官方手册有上千页厚,语法相当冗长。

  • 对于习惯在本地构建知识库沉淀原子化笔记、或者在日常开发中需要快速画图的人来说,TikZ 显得太“重”了。在这些场景下,像 Mermaid 这种轻量级、开箱即用的标记语言往往效率更高。
  • 如果你目前正在用 Word + Zotero 的工作流撰写论文,为了画一张图而强行引入 LaTeX 和 TikZ 环境,会带来巨大的额外心智负担。

总结建议

TikZ 是学术界排版神坛上的圣物。如果你的论文被要求必须交 LaTeX 源码,或者你追求极度严谨的排版强迫症,它值得你花几天时间去死磕。

创建于 2026/3/9 更新于 2026/5/27