Markmap 是一款用于将 Markdown 文本转换为思维导图的免费工具。
Markmap 的核心原理是通过输入:结构化的 Markdown 文本,根据标题层级构建一个树形数据结构,然后使用 d3.js 可视化 JavaScript 库将树形数据渲染成可交互的 SVG 思维导图。
主要特点
Markmap 的主要特点和优势在于:
- 纯文本驱动:内容存储在 Markdown 文件中可以于使用任何文本编辑器创建、编辑和版本控制 (例如 Git)。避免了传统图形化思维导图工具中鼠标拖拽操作的繁琐,操作高效。
- 分享与协作:Markdown 文件是纯文本,体积小,易于分享和协作。团队成员可以像编辑普通文档一样共同修改思维导图的结构和内容。完美融入基于文本的工作流(如代码仓库、文档项目)。
- 交互式可视化:生成的思维导图是动态的 SVG,可以点击节点展开/折叠分支,聚焦于特定部分。支持缩放和拖拽平移整个视图。
- 轻量级与灵活:核心库本身比较轻量,可以集成到各种环境和工具链中,例如 VS Code、Vim、Emacs、MCP Server 等。
- 免费开源: Markmap 是一个开源项目。
在线体验
使用 Markmap 最便捷的方式是访问官方在线工具:
https://markmap.js.org/repl
页面左侧用于编辑 Markdown 文本,右边可以实时预览思维导图,结果可以导出为 HTML 或 SVG。
命令行工具
Markmap 提供了命令行工具,适合批量处理或集成到构建脚本中。输入以下命令进行安装:
npm install -g markmap-cli
然后使用以下命令生成思维导图:
# 将 input.md 转换成包含交互式思维导图的 output.html
markmap input.md -o output.html# 或者直接生成 SVG
markmap input.md --output output.svg
VS Code插件
在 VS Code 扩展市场搜索并安装 Markmap 插件:
然后就可以直接在 VS Code 中实现相同的功能了。