简体中文 | English
PlotKityCat 为初高中数学教学提供自然语言驱动的可视化工作流。教师可以描述一个数学概念、图像或交互场景,由 AI 生成 Matplotlib 代码,并在应用内继续编辑代码、组织笔记、调整图像与沉淀教学素材。
应用携带独立 WinPython Runtime,适合放入 U 盘、教室电脑或个人工作目录运行。代码、Markdown、LaTeX 公式和可视化结果围绕同一场景组织,减少在多个工具之间切换的成本。
Plotkitycat_compressed.mp4
- 使用自然语言生成 Matplotlib 绘图代码。
- 支持代码生成、优化与修复。
- Prompt 已针对数学教学和可视化质量重构。
- AI 工作期间使用小猫动画呈现生成状态。
- 支持自定义 OpenAI-compatible API。
- 可以配置 Base URL、API Key 与 Model。
- AI Provider 与生成工作流解耦,方便接入兼容服务。
- 场景内同时管理 Python 代码、Markdown 笔记和可视化结果。
- Markdown 支持 LaTeX 数学公式。
- 支持多个工作区和场景的创建、切换、重命名与组织。
- 支持仅笔记、仅代码和组合视图等 Layout Mode。
- 支持
.pkcw工作区包导入与导出。
- 从笔记内容生成可视化设计卡片。
- 支持继续优化生成结果。
- 保留设计版本,方便比较与回退到所需方案。
- 新用户首次启动时进入新手教程。
- 教程基于随应用发布的预制工作区。
- 引导覆盖主要区域、常用交互和基础生成流程。
- 完整包包含 WinPython Runtime、Matplotlib、NumPy、SciPy 和 PyQt5。
- 支持 U 盘与免安装目录运行。
- 设置页支持检查更新、下载更新与重启安装。
- 更新文件执行 Size 与 SHA256 完整性校验。
- 集成 ScreeningZoom,辅助课堂放映与局部讲解。
适合第一次使用,包含应用、Runtime、预制工作区和放映组件。
文件名:
PlotKityCat-v0.0.5.0.zip
适合已经安装过完整包、只需要替换应用文件的用户。
文件名:
PlotKityCat-0.0.5.0-windows-amd64.zip
已安装用户后续可以在设置中直接检查更新。
当前发布目标为 Windows AMD64。macOS 与 Linux 安装包暂未提供。
- 下载并解压完整包。
- 运行
PlotKityCat.exe。 - 跟随新手教程熟悉工作区。
- 描述希望生成的数学图像。
- 在代码区、笔记区和可视化区域继续调整结果。
/\_/\
( •ω•) “画出带参数滑块的二次函数,
/ >📐 同时标出顶点和对称轴。”
↓ AI
y
│ ╭─╮
│ ╭─╯ ╰─╮
└────────────── x
在 AI 设置中可以切换到 Custom Mode,并填写兼容 OpenAI Chat Completions 协议的服务地址。
工作区
├─ 场景 A
│ ├─ main.py # Matplotlib 代码
│ └─ note.md # Markdown / LaTeX 教学笔记
├─ 场景 B
│ ├─ main.py
│ └─ note.md
└─ .plotkitycat-scenes.json
多个工作区可以打包为 .pkcw 文件,用于备份、交换与迁移教学素材。
PlotKityCat 源于我开发 GGBPuppy 时的一次受挫。
那天,我一直在研究 GeoGebra Web API。AI 总会写出无法运行的 GGB 代码,我逐渐发现,问题并不只来自模型:GGB 提供的接口并不完整。为了确认这件事,我以开发者的身份给他们的团队写了一封邮件,得到的答复却是需要付费。
那天晚上,我关掉了那个有着沉闷线条和色彩的窗口。后来我梦见了 Jobs。
这件事让我开始重新思考数学教学软件:教师为什么必须被某个封闭接口限制?AI 为什么只能在残缺的 API 上反复猜测?一张数学图像的美感,为什么总要向旧工具的视觉习惯妥协?
于是我转向 Matplotlib。它拥有开放、成熟且可审查的 Python 生态,也给 AI 留下了足够清晰的表达空间。PlotKityCat 就从这里开始:让教师描述教学意图,让代码负责精确,让图像负责表达。
我们希望守住三条原则:
- 开放:教学工具应当可以被审查、扩展和分享。
- 美感:数学图像应当清晰、克制,并具有表达力。
- AI-native:教师描述教学意图,工具将意图转换为代码与图像。
/\_/\
( -.- ) 数学负责严谨
/ >☕ 小猫负责陪你等图
| 层级 | 技术 |
|---|---|
| Desktop Shell | Wails v2 |
| Frontend | Vue 3、TypeScript、Vite、CodeMirror |
| Backend | Go |
| Visualization | Python 3.13、Matplotlib、NumPy、SciPy |
| Interactive Runtime | WinPython、PyQt5 |
| Notes | Markdown、MathJax / LaTeX |
| AI | OpenAI-compatible API |
- Windows
- Go 1.22+,推荐使用
go.mod指定的 Toolchain - Node.js 20+
- Wails v2
cd frontend
npm install
cd ..
wails dev准备或重建便携 Runtime:
.\tools\prepare-runtime.ps1 -SourceRuntimeDir <你的 Runtime 目录>详细说明见 RUNTIME_BUILD.md。
.\tools\build-versioned-app.ps1
.\tools\prepare-update-release.ps1
.\tools\package-release.ps1版本、更新服务器和完整发布流程见 UPDATE_RELEASE.md。
- Matplotlib:核心可视化引擎。
- ManimCat:提供早期开发基础与灵感。
- Wails:Go 与 Web 技术结合的桌面应用框架。
- ZoomIt / PowerToys:课堂放映辅助能力的实现基础。
期待更多数学可视化资源被开发、开放与分享,让教学表达更加清晰,让优质教育资源更容易流动。
也期待有一天,PlotKityCat 可以成为教师、学生和创作者共同维护的数学可视化社区。
/\_/\
( ^.^ )
/ づ づ 一起把数学画清楚。