图表表示方式建议
图表表示方式建议
当前方式分析
1. ASCII 艺术图(当前使用)
优点:
- 纯文本,易于编辑
- 无需额外工具
- 版本控制友好
缺点:
- 视觉效果一般
- 复杂图表难以表达
- 移动端显示可能有问题
2. SVG 图片(IndexLib 系列使用)
优点:
- 视觉效果好
- 矢量图,缩放不失真
- 浏览器原生支持
缺点:
- 需要创建图片文件
- 编辑需要图形工具
- 文件管理复杂
推荐方案
方案 1:SVG 图片(推荐用于复杂架构图)
适用场景:
- 系统架构图
- 复杂流程图
- 类图/组件关系图
实现方式:

工具推荐:
- Draw.io(在线/桌面版)
- Excalidraw(手绘风格)
- Figma(专业设计)
方案 2:改进的 ASCII 艺术图(推荐用于简单流程图)
适用场景:
- 简单流程
- 数据流向
- 层级结构
改进技巧:
- 使用更清晰的字符
- 添加注释说明
- 保持对齐
示例:
传统方式(当前):
┌─────────────┐ ┌─────────────┐
│ Compute │────▶│ Storage │
│ Nodes │ │ Cluster │
└─────────────┘ └─────────────┘
改进方式(推荐):
┌─────────────────┐ ┌─────────────────┐
│ Compute Layer │ RDMA │ Storage Layer │
│ │────────▶│ │
│ • Primary │ │ • Chunk 1 │
│ • Replica 1 │ │ • Chunk 2 │
│ • Replica 2 │ │ • Chunk 3 │
└─────────────────┘ └─────────────────┘
│ │
│ │
└──────── PolarFS ───────────┘
方案 3:表格形式(推荐用于对比和关系)
适用场景:
- 特性对比
- 配置参数
- 简单关系
示例:
| 特性 | 传统架构 | 云原生架构 |
|---|---|---|
| 扩展性 | 计算和存储耦合 | 计算和存储分离 |
| 成本 | 固定成本 | 按需付费 |
| 恢复时间 | 分钟级 | 秒级 |
方案 4:列表 + 缩进(推荐用于层级结构)
适用场景:
- 目录结构
- 组件层次
- 配置项
示例:
PolarDB 架构
├── Compute Layer
│ ├── Primary Node
│ ├── Read Replica 1
│ └── Read Replica 2
├── PolarFS
│ ├── Metadata Service
│ └── Chunk Servers
└── Storage Layer
├── Chunk 1 (3 replicas)
├── Chunk 2 (3 replicas)
└── Chunk 3 (3 replicas)
方案 5:代码块 + 注释(推荐用于流程说明)
适用场景:
- 算法流程
- 操作步骤
- 状态转换
示例:
// PolarDB 写入流程
void write(Data data) {
// 1. 写入本地 Buffer Pool
buffer_pool.write(data);
// 2. 写入 Redo Log
redo_log.append(data);
// 3. 通过 PolarFS 刷新到存储层
polafs.flush(redo_log);
// 4. 等待存储确认
wait_for_storage_ack();
// 5. 返回成功
return success;
}
混合方案建议
对于论文笔记文章:
- 架构图:使用 SVG 图片
- 系统整体架构
- 组件关系图
- 数据流向图
- 流程图:使用改进的 ASCII 图
- 简单流程
- 操作步骤
- 状态转换
- 对比表:使用表格
- 特性对比
- 参数配置
- 性能指标
- 代码流程:使用代码块
- 算法流程
- 实现细节
- 伪代码
具体实施建议
优先级 1:改进现有 ASCII 图
改进点:
- 添加更清晰的注释
- 使用更统一的格式
- 保持对齐和间距
优先级 2:为关键架构图创建 SVG
需要创建的 SVG:
- PolarDB 整体架构图
- RocksDB LSM-Tree 结构图
- 分布式存储系统架构图
优先级 3:使用表格和列表
适用场景:
- 配置参数对比
- 性能指标对比
- 组件功能说明
工具推荐
创建 SVG 图表:
- Draw.io:https://app.diagrams.net/
- 免费,功能强大
- 支持导出 SVG
- 可以保存源文件
- Excalidraw:https://excalidraw.com/
- 手绘风格
- 简单易用
- 适合技术图表
- Figma:https://www.figma.com/
- 专业设计工具
- 协作功能强
- 适合复杂图表
ASCII 图工具:
- ASCII Flow:http://asciiflow.com/
- Monodraw:Mac 专用
- Textik:在线工具
总结
推荐策略:
- 简单图表:改进的 ASCII 艺术图
- 复杂架构:SVG 图片
- 对比说明:表格形式
- 层级结构:列表缩进
- 流程说明:代码块 + 注释
实施步骤:
- 先改进现有 ASCII 图的格式
- 为关键架构图创建 SVG
- 逐步替换复杂图表为 SVG
- 保持简单图表使用 ASCII