Typora绘图

这篇博客由来:

​ 由于工作涉及图表绘制,接触到Typora的绘图功能,这个工具真的很好用,也很强大,如下主要针对工具的绘图功能讲解,其它用途暂不赘述。工作日上班,一般只在周末休息期间更新,更新中...

一、简介

1、Typora简介

​ Typora 是一款跨平台、无缝实时预览的 Markdown 编辑器,由 Abner Lee 开发,核心定位是「文档与格式一体化」,让你在编辑 Markdown 时无需切换「源码 / 预览」模式,直接看到渲染效果,适合技术笔记、业务文档、学术写作、博客撰写等场景,兼顾轻量高效与功能全面。以下从核心特性、版本与兼容性、使用场景、优缺点、最佳实践等方面详细介绍。

2、Typora优缺点

优点 缺点
无缝实时预览,专注内容创作 1.0 + 付费,无免费版(旧版可离线使用但无更新)
文档与图表一体化,跨平台兼容 非专业绘图工具,Mermaid 样式定制有限,超大画布管理较弱
纯文本存储,Git 版本控制友好 本地编辑器,无多人实时协作(需共享文件)
轻量高效,启动快,资源占用低 复杂 HTML/CSS 定制需手动改主题文件,门槛较高
支持数学公式 / Mermaid / 代码高亮等专业功能 导出格式受限,无法导出 Visio 等绘图格式

3、mermaid扩展

​ Mermaid 是一款基于文本语法的开源图表绘制工具,核心特点是「用纯文本代码生成可视化图表」,无需拖拽节点、调整样式,只需按固定语法编写文本,就能自动渲染出流程图、UML 图、甘特图等各类图表,广泛适配 Typora、GitHub、VS Code、GoLand 等工具 / 平台,是技术文档、项目管理中「文本化、可版本控制、跨平台兼容」的图表解决方案。

​ 简单来说:Mermaid 让你用写代码的方式画图表,告别传统绘图软件的拖拽操作,兼顾效率与可维护性。

4、mermaid优缺点

按核心维度分类梳理,清晰区分核心优势、先天短板,同时标注影响场景 / 使用建议,方便快速参考:

类别 特点 具体说明 影响场景 / 使用建议
核心优点 纯文本编写,可版本控制 图表以文本代码存储,非二进制文件,可提交 Git/SVN,能追溯修改记录,无版本混乱问题 技术文档、团队协作场景核心优势,完美适配研发流程
语法极简,上手 / 修改高效 通用逻辑为「声明类型 + 定义元素 + 描述关系」,新手 10 分钟掌握基础;修改仅需编辑文本,无需拖拽节点 轻量绘图、临时梳理逻辑,效率远高于拖拽式工具
跨平台无缝兼容,开箱即用 代码可直接在 Typora/GitHub/ 飞书 / VS Code 等主流平台渲染;无独立客户端,内置引擎即可用 多平台分享图表(如文档 + 代码仓库),无需格式转换
图表类型全覆盖,一站式满足 支持流程图 / 序列图 / 甘特图 / ER 图 / 饼图等,覆盖技术、项目、数据、设计全场景需求 日常绘图无需切换多个工具,适配技术文档 / PRD / 项目计划
与文档深度融合,一体化创作 可内嵌在 Markdown / 代码注释 / ReadMe 中,与文字、代码、表格无缝结合,无需跨工具切换 技术文档、产品 PRD 核心需求,告别「图表与文字分离」
开源免费,无商业限制 MIT 协议开源,个人 / 企业使用无付费门槛,无功能解锁限制 中小团队、个人开发者,零成本使用
实时渲染,调试便捷 支持的工具中编写代码即时渲染,修改同步刷新,无需手动导出预览 快速调试图表逻辑,大幅提升绘图效率
核心缺点 样式定制能力弱,颜值上限低 仅支持内置主题 + 少量配置,无法自定义节点 / 连线样式、精准调整位置,无企业 VI 适配能力 对外交付(白皮书 / 客户演示)、高颜值定制图表不适用,需搭配专业绘图工具
超大图表画布管理差 步骤 / 嵌套过多时自动排版,无法缩放、平移、折叠子流程,易排版混乱 / 节点重叠 超 50 步的企业级复杂流程、多层嵌套架构图不适用
仅支持静态,无交互能力 仅生成静态图表,无点击、钻取、数据联动等交互效果,无法动态演示 大屏可视化、动态流程演示、交互式图表场景完全不满足
复杂图表代码可读性下降 多层循环 / 多分支的复杂逻辑,代码冗长,即使加注释,可读性也不如可视化拖拽图表 新人接手复杂图表时,需逐行梳理代码,建议拆分多个子图表
版本兼容问题,新语法受限 分 8.x(经典)/10.x+(新版),不同平台内置版本不同,新版语法(如 stateDiagram-v2)在旧平台无法渲染 跨平台使用优先用 8.x 经典语法,避免「本地能画,平台不显示」
中文适配需手动配置 默认中文支持一般,部分平台易乱码 / 字体错位,需手动加指令指定中文字体 所有中文场景,代码开头添加字体初始化指令即可解决
导出格式有限,无法二次编辑 仅导出 PNG/SVG/PDF 等静态格式,无法导出 Visio/Draw.io 等绘图文件 需在专业绘图软件二次编辑的场景,只能重新绘制
协作体验一般,易代码冲突 在线协作时为「代码级编辑」,多人同时修改易冲突,无拖拽工具的「节点级协作」友好 非技术团队、多人实时高频协作场景,适配性差

5、Typora类似工具介绍

根据需求选择:

工具类型 工具名称 核心特点 Mermaid 支持度 适配场景
轻量 Markdown 编辑器(替代 Typora) Obsidian 本地知识库工具,纯离线、双向链接、图谱化管理文档,自定义插件丰富 原生支持,可通过插件增强样式 / 导出 个人笔记、知识库管理,需长期维护的 Mermaid 图表
VS Code(+ 插件) 开源代码编辑器,跨平台,通过「Mermaid Preview」「Markdown All in One」插件扩展 插件支持实时渲染、语法补全、导出图片,支持新版 Mermaid 语法 开发人员写代码 + 文档,图表与代码同编辑器管理
Cmd Markdown 在线 / 客户端双端,极简界面,支持离线编辑,导出格式丰富 原生实时渲染,支持核心图表类型(流程图 / 序列图 / 甘特图) 轻量写作、快速绘图,无需复杂配置
在线协作文档(团队场景) 飞书文档 企业级在线协作,多人实时编辑,文档 / 表格 / 思维导图一体化 原生实时渲染,支持全类型 Mermaid 图表,跨端同步 团队协作梳理流程、PRD 编写、项目计划(甘特图)
语雀 阿里旗下知识库工具,支持「文档 + 画板 + 表格」,私有化部署 原生渲染,支持核心图表类型,可嵌入画板混合编辑 技术团队知识库、系统设计文档、跨团队协作
Notion(+ 插件) 全能笔记 / 协作工具,模块化管理内容,支持第三方插件 需安装 Mermaid 插件(如 Mermaid Chart),渲染流畅,支持新版语法 个人 / 小团队轻量协作,内容 + 图表一体化管理
Confluence 企业级知识库,适配研发 / 项目管理流程,可集成插件 安装「Mermaid for Confluence」插件后支持渲染,兼容核心语法 大型企业知识库、标准化流程文档
专业绘图工具(Mermaid 增强) Mermaid Live Editor Mermaid 官方在线编辑器,实时预览,支持新版语法,可导出 PNG/SVG/PDF 100% 支持所有 Mermaid 语法(含新版 timeline/quadrantChart) 调试复杂 Mermaid 代码、导出高清图表
ProcessOn 在线拖拽绘图工具,支持导入 / 导出 Mermaid 代码 支持 Mermaid 代码转拖拽图表,也可拖拽后导出 Mermaid 代码 非技术团队协作,兼顾拖拽直观性与 Mermaid 兼容性
Draw.ioDiagrams.net 开源专业绘图工具,跨平台,支持多种格式 可导入 Mermaid 代码生成图表,也可导出 Mermaid 代码 复杂架构图、定制化样式图表,兼顾 Mermaid 文本化需求
开发工具 / 代码仓库(研发场景) GitHub/GitLab/Gitee 代码仓库平台,Markdown 渲染核心功能 原生支持 Mermaid 核心语法(8.x),README/Issue 中可直接渲染 代码仓库文档、开源项目说明,图表与代码仓库一体化
GoLand/IntelliJ IDEA JetBrains 系列 IDE,2022.3+ 原生支持 实时渲染 Markdown 中的 Mermaid 代码,支持语法高亮 / 补全 研发人员写代码注释、项目文档,无需切换编辑器
JetBrains Fleet 新一代轻量 IDE,云协作,模块化扩展 安装 Mermaid 插件后支持实时渲染,适配研发流程 云原生研发团队,在线协作编写代码 + 图表

核心选择建议(按场景匹配):

  1. 替代 Typora(本地 Markdown 编辑) :优先选 Obsidian (知识库管理)、VS Code + 插件(开发人员适配);
  2. 团队在线协作 :企业级选 飞书文档 / Confluence ,小团队 / 个人选 语雀 / Notion
  3. 调试 / 导出 Mermaid 图表 :用官方的 Mermaid Live Editor(最全语法支持);
  4. 兼顾拖拽 + Mermaid :选 ProcessOn/Draw.io(非技术团队友好,支持双向转换);
  5. 研发场景(代码 + 文档) :直接用 GitHub/GitLab/GoLand,无需额外工具。

总结:

​ 所有工具的核心共性是兼容 Mermaid 核心语法(流程图 / 序列图 / 甘特图),差异主要在「协作能力、样式定制、场景适配」:

  • 追求「轻量、本地、文档一体化」→ 选 Obsidian/VS Code,接近 Typora 体验;
  • 追求「团队协作、在线编辑」→ 选飞书文档 / 语雀;
  • 追求「专业绘图 + Mermaid 兼容」→ 选 ProcessOn/Draw.io;
  • 研发场景「代码 + 文档」→ 选 GitHub/GoLand。

二、图表绘制

此工具可以制作很多种图,本博客只介绍一部分的图标绘制方法

1、图表概览

流程图、时序 / 序列图、

1.高频核心图表(技术 / 文档必备,90% 场景适用)

图表类型 核心关键字 核心用途 Typora 极简示例
流程图 flowchart(TD/LR) 业务步骤、执行流程、判断分支 mermaid<br>flowchart TD<br>A(开始) --> B[执行操作]<br>B --> C{成功?}<br>C--是-->D(结束)<br>
时序 / 序列图 sequenceDiagram 多系统 / 角色的时序交互 mermaid<br>sequenceDiagram<br>客户端->>服务端: 请求数据<br>服务端-->>客户端: 返回结果<br>
状态图 stateDiagram 任务 / 对象的生命周期流转 mermaid<br>stateDiagram<br>[*]-->待启动<br>待启动-->运行: 点击启动<br>运行-->停止: 点击关闭<br>
甘特图 gantt 项目排期、任务进度、时间规划 mermaid<br>gantt<br>title 开发计划<br>需求分析: 2026-02-06, 3d<br>开发: after 需求分析, 5d<br>

2.专业技术图表(系统 / 设计 / 数据库专用)

图表类型 核心关键字 核心用途 适用场景
类图 classDiagram 面向对象的类结构、继承 / 关联 系统架构设计、代码类关系梳理
实体关系图(ER) erDiagram 数据库表结构、字段 / 关联关系 数据库设计、数据建模
需求图 requirementDiagram 需求拆解、用例 / 验收标准 产品 PRD、需求分析文档

3.数据 / 场景可视化图表(轻量统计 / 用户分析)

图表类型 核心关键字 核心用途 适用场景
饼图 pie 数据占比、成分分布 简单的资源 / 数据统计
用户旅程图 journey 用户操作路径、产品体验节点 产品用户体验分析
象限图 quadrantChart 二维维度分类(优先级 / 风险) 任务优先级、风险评估

4.小众拓展图表(轻量需求,按需使用)

图表类型 核心关键字 核心用途 适用场景
思维导图 mindmap 知识点拆解、逻辑梳理 笔记整理、方案脑暴
时间线图 timeline 事件发展、版本迭代时间线 项目迭代、产品更新记录

5.兼容的传统轻量图表(非 Mermaid,仅 Typora 支持)

这类是 Typora 额外集成的flowchart.js/js-sequence 扩展,仅本地渲染有效 ,复制到 GitHub / 飞书等平台会失效,建议优先用上述 Mermaid 语法,仅临时轻量绘图使用:

  1. 传统流程图:关键字flow,语法st=>start: 开始
  2. 简易序列图:关键字sequence,语法客户端->服务端: 请求

2、使用说明(Typora)

注意:只针对Typora和支持mermaid的markdown渲染工具

  1. 启用方式(一般默认开启) :无需额外操作,确保 Typora 「偏好设置→Markdown→勾选 图表」,直接在编辑区输入 ```mermaid 回车,编写代码即可实时渲染
  2. 语法适配 :所有示例均为 Typora 兼容的低版本 Mermaid 语法 ,避免stateDiagram-v2等新版关键字,无渲染报错;
  3. 中文适配(出现问题在配置) :在代码开头加初始化指令,解决中文乱码:%%{init: {'themeVariables': {'fontFamily': '微软雅黑'}}}%%
  4. 导出 / 复用(还有很多导出格式):右键渲染后的图表可「复制为图片」(PNG/SVG),或直接复制代码块到 GoLand / 语雀 / GitHub(核心语法全兼容)。
  5. **注意:**需要遵守语法规则才可以渲染图形

3、图表绘制

注意:

​ Typora中支持css样式渲染,图形颜色字体可以调整,需要相关技术,门槛稍高。讲解会复杂很多篇幅会很长,所以暂不赘述,想了解可以先了解前端相关技术后再来尝试。也可观看博主早期博客了解前端相关基础内容:博客地址

图表绘制教程顺序:

  1. 流程图
  2. 时序 / 序列图
  3. 状态图
  4. 甘特图
  5. 类图
  6. 实体关系图(ER)
  7. 需求图
  8. 饼图
  9. 用户旅程图
  10. 象限图
  11. 思维导图
  12. 时间线图
1.流程图

代码中未高亮显示、老版本代码可以高亮显示,注意:此高亮指的是源码,不是下面明文的示例代码

mermaid官方网站文档教程链接(英文)

社区维护的中文文档站

(1)新版本语法

flowchart

语法

如下仅是基础的常用功能语法,如需更全面内容可参考官网教程文档

  • 方向标识

    标识 含义 示例
    TD 从上到下 flowchart TD
    LR 从左到右 flowchart LR
    BT 从下到上 flowchart BT
    RL 从右到左 flowchart RL
  • 节点规则(核心规则)

    节点是流程图的最小单元,语法格式:节点ID[显示文本],核心规则

  • 节点 ID

    • 唯一且无特殊字符(仅字母、数字、下划线,不能以数字开头);
    • 区分大小写(Aa 是两个不同节点);
    • 示例:login123 ✅、123login ❌、login-123 ❌。
  • 节点形状与语法(固定格式,不能混用符号):

    形状 语法格式 规则说明
    矩形 ID[文本] 方括号必须成对,文本可含空格
    圆角矩形 ID(文本) 圆括号必须成对
    菱形(判断) ID{文本} 大括号必须成对
    双矩形 ID[[文本]] 双括号必须成对
    旗帜形 ID>文本] 左尖括号 + 右方括号
  • 特殊字符处理

    节点文本含 []/()/{} 等符号时,需用反斜杠转义

  • 基础连线(箭头)规则

    连线样式 语法 规则说明
    普通实线 --> 必须是两个短横线 + 箭头
    虚线 -.-> 短横线 + 点 + 箭头
    加粗实线 ===> 两个等号 + 箭头
    带标签 --标签--> 标签需放在两个短横线之间
    双向箭头 <--> 左右箭头成对
  • 连线方向

    默认跟随布局方向,也可手动指定(如 A -down-> B 强制向下),支持 up/down/left/right

  • 多节点连线

    可链式编写,也可分行,效果一致

  • 子图规则

    • 子图用于拆分复杂流程,语法:subgraph 子图名称 + 内容 + end
    • subgraphend 必须成对出现,子图名称可含空格;
    • 子图内可自定义布局方向(覆盖全局方向);
    • 子图内节点 ID 仍需全局唯一(不能与外部节点重名)。
  • 注释规则

    • 单行注释:%% 注释内容(必须以 %% 开头,可放在行首 / 行尾);
    • 多行注释:无原生支持,需每行加 %%
  • 样式规则:自定义节点/;连线样式

    • classDef 定义样式类,::: 绑定到节点(样式类名区分大小写);
    • linkStyle 定义连线样式,参数为「连线索引(从 0 开始)+ 样式」。
  • 特殊规则(避坑重点)

    • 空格规则:关键字(如 flowchart/subgraph)后必须加空格,节点 / 连线前后的空格不影响(推荐加空格,提升可读性);
    • 换行规则:一条完整的节点 / 连线语句可换行,但需保证语法完整;
    • 大小写规则:flowchart/subgraph/end 等关键字不区分大小写FlowChart/FLOWCHART 均可),但节点 ID、样式类名区分大小写。

代码示例:

复制代码
# 流程图相关代码
flowchart TD nodeSpacing: 100
    Start((开始))
    End((结束))

    Start --> Req[接收请求]

    Req --> Auth{鉴权通过?}
    Auth -->|否| AuthFail[返回 401]
    AuthFail --> End

    Auth -->|是| CacheCheck{缓存命中?}

    CacheCheck -->|是| CacheReturn[返回缓存数据]
    CacheReturn --> Log[记录访问日志]
    Log --> End

    CacheCheck -->|否| DBQuery[查询数据库]

    DBQuery --> DBOK{查询成功?}
    DBOK -->|否| DBError[返回 500 错误]
    DBError --> Log

    DBOK -->|是| CacheWrite[写入缓存]
    CacheWrite --> Response[返回结果]
    Response --> Log

    %% 子系统示例
    subgraph 缓存系统
        CacheCheck
        CacheReturn
        CacheWrite
    end

    subgraph 数据库系统
        DBQuery
        DBOK
        DBError
    end

数据库系统
缓存系统






开始
结束
接收请求
鉴权通过?
返回 401
缓存命中?
返回缓存数据
记录访问日志
查询数据库
查询成功?
返回 500 错误
写入缓存
返回结果

(2)老版本语法

graph新版本功能可以支持更丰富的内容,旧版本就不介绍太多了

复制代码
graph TD
st[开始] --> op[登录]

开始
登录

(3)新旧版本差异

graph 是 Mermaid v10 之前 的通用语法,flowchart 是 v10 及以后推出的专用流程图语法,两者的差异主要体现在「功能支持」和「未来维护」上,而非「基础渲染效果」:

维度 graph(旧版) flowchart(新版)
版本背景 v10 前的默认流程图语法(通用) v10 后专为流程图设计(专用)
基础功能 支持节点、普通连线、子图(够用) 完全兼容 graph 的基础功能
高级功能 仅支持少量箭头样式,无布局优化 支持自定义连线、多类型箭头、布局微调、样式增强
官方态度 仅维护,不新增功能(兼容为主) 重点迭代,持续新增流程图专属特性
兼容性 全版本支持(老 Typora 也能用) v10+ 支持(新版 Typora 已适配)
  • 基础场景:几乎无差异
  • 高级场景:flowchart 新增专属功能(graph 不支持)
    • 更丰富的连线控制
    • 布局与节点优化
    • 更灵活的子图与交互
(4)版本兼容性
  1. Typora 版本 < 1.0 :内置 Mermaid < v10,flowchart 仅等价于 graph,高级功能无效;

  2. Typora 版本 ≥ 1.0 :内置 Mermaid ≥ v10,flowchart 可使用所有高级特性;

  3. 如何查版本:Typora → 帮助 → 关于 Typora(可看到 Typora 版本)。

相关推荐
MAX°孟兆4 天前
VLOOK 2026.1 上新:小封面/PDF/文档脚注/表格全屏浏览,还有主题大焕新~实用好用Markdown主题&插件
typora·markdown·主题·插件·vlook
茫忙然5 天前
免费使用正版的Typora超简单教程
typora
恃宠而骄的佩奇21 天前
Typora 免费版本(markdown 编辑器) 无需激活,开箱即用!
编辑器·typora·markdown
噜~噜~噜~1 个月前
如何用Typora画甘特图
typora·甘特图
李浩洋933 个月前
Typora picgo-core gitee图片上传设置
gitee·typora·图片上传
UpYoung!4 个月前
【MD编辑器】实用工具推荐之轻量级 Markdown 编辑器Typora下载安装图文教程
编辑器·办公软件·typora·md编辑器·markdown 编辑器
微风中的麦穗4 个月前
【MD编辑器Typora】Typora最新 V1.12.1版:轻量级 Markdown 编辑器详细图文下载安装使用指南 【办公学习神器之MD文本编辑器】
运维·typora·开发工具·md编辑器·markdown 编辑器·markdown文件·办公学习工具
YoungUpUp5 个月前
【MD文本编辑器Typora】实用工具推荐之——轻量级 Markdown 编辑器Typora下载安装使用教程 办公学习神器
学习·typora·markdown·文档编辑器·markdown编辑器·md文本编辑器·实用办公软件
GIS小小研究僧8 个月前
Typora文档另存与图片迁移的一种思路
typora