66 lines
1.6 KiB
Markdown
66 lines
1.6 KiB
Markdown
|
|
# changelog.md
|
|||
|
|
|
|||
|
|
## 待实现 (Todo)
|
|||
|
|
|
|||
|
|
- [ ] 单元测试
|
|||
|
|
- [ ] 集成测试
|
|||
|
|
- [ ] 配置文件热加载
|
|||
|
|
- [ ] 图表缓存机制
|
|||
|
|
|
|||
|
|
## 已实现 (Done)
|
|||
|
|
|
|||
|
|
- [x] 项目结构搭建
|
|||
|
|
- [x] 核心类型定义
|
|||
|
|
- [x] SVG 渲染器
|
|||
|
|
- [x] PNG 渲染器
|
|||
|
|
- [x] ANSI 渲染器
|
|||
|
|
- [x] 纯文本渲染器
|
|||
|
|
- [x] API Handler
|
|||
|
|
- [x] Docker 部署配置
|
|||
|
|
- [x] 饼图 (pie) 支持
|
|||
|
|
- [x] 散点图 (scatter) 支持
|
|||
|
|
- [x] 圆环图 (donut) 支持
|
|||
|
|
- [x] 气泡图 (bubble) 支持
|
|||
|
|
- [x] 混合图 (mixed) 支持
|
|||
|
|
- [x] 极区图 (polar) 支持
|
|||
|
|
- [x] 雷达图 (radar) 支持
|
|||
|
|
|
|||
|
|
## 版本记录
|
|||
|
|
|
|||
|
|
### v0.3.0 (2026-04-16)
|
|||
|
|
|
|||
|
|
- 新增图表类型:圆环图、气泡图、混合图、极区图、雷达图
|
|||
|
|
- 支持 9 种图表类型
|
|||
|
|
|
|||
|
|
### v0.2.0 (2026-04-16)
|
|||
|
|
|
|||
|
|
- 新增图表类型:饼图、散点图
|
|||
|
|
- 优化 ANSI 渲染器
|
|||
|
|
|
|||
|
|
### v0.1.0 (2026-04-16)
|
|||
|
|
|
|||
|
|
- 初始版本
|
|||
|
|
- 支持图表类型:line, bar
|
|||
|
|
- 支持输出格式:text, ansi, svg, png_url, markdown
|
|||
|
|
|
|||
|
|
## 认知纠正 (Knowledge)
|
|||
|
|
|
|||
|
|
### Go 图表库选型
|
|||
|
|
|
|||
|
|
1. **gonum/plot** - 纯 Go,无外部依赖,适合生成静态图片(PNG/SVG)
|
|||
|
|
2. **ntcharts** - 专为 Bubble Tea TUI 设计,终端内渲染,依赖较多
|
|||
|
|
3. **pterm** - 终端美化库,有 BarChart 组件,但不支持 PNG/SVG
|
|||
|
|
|
|||
|
|
**结论**:对于需要同时支持 Web(PNG/SVG)和 CLI(ANSI)的场景,gonum/plot + 自写 ANSI 渲染器是最佳组合。
|
|||
|
|
|
|||
|
|
### 设计模式应用
|
|||
|
|
|
|||
|
|
1. **策略模式**:不同的渲染器实现统一的 Renderer 接口
|
|||
|
|
2. **工厂模式**:RendererFactory 根据格式类型创建对应渲染器
|
|||
|
|
|
|||
|
|
### Docker 注意事项
|
|||
|
|
|
|||
|
|
- 使用 `golang:alpine` 减小镜像体积
|
|||
|
|
- 多阶段构建:编译 -> 运行
|
|||
|
|
- 端口映射:3100:3100
|