[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-83133":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":12,"contributorsCount":12,"subscribersCount":12,"size":12,"stars1d":14,"stars7d":15,"stars30d":15,"stars90d":12,"forks30d":12,"starsTrendScore":16,"compositeScore":12,"rankGlobal":9,"rankLanguage":9,"license":17,"archived":18,"fork":18,"defaultBranch":19,"hasWiki":20,"hasPages":18,"topics":21,"createdAt":9,"pushedAt":9,"updatedAt":22,"readmeContent":23,"aiSummary":24,"trendingCount":12,"starSnapshotCount":12,"syncStatus":25,"lastSyncTime":26,"discoverSource":27},83133,"Intelligrapher","MrLee2R\u002FIntelligrapher","MrLee2R","科研绘图智能助手\u002FIntelligent Assistant for Scientific Research Illustration — Claude Code Skill",null,"Python",111,0,52,3,59,20,"MIT License",false,"main",true,[],"2026-06-12 02:04:31","# Intelligrapher\n\n> 搞科研的都知道，画一张能直接往论文里塞的图，比跑实验还折腾。配色丑了审稿人不乐意，坐标轴单位标错了被打回来重画，更崩溃的是每次都要从零写 matplotlib 代码——时间都花在调 `plt.rcParams` 上了。\n>\n> 这个项目就是想解决这个痛点。\n\nIntelligrapher 是一套给 Claude Code 用的科研绘图 Skill。它内置了三套东西：知识库（告诉你这个领域图该怎么画）、审美库（顶刊配色直接拿来用）、模板库（不用从零写代码）。三样东西配合，你的需求进去，可运行的 Python 脚本出来。\n\n![example\u002Fcomparison.png](https:\u002F\u002Fgithub.com\u002FMrLee2R\u002FIntelligrapher\u002Fblob\u002Fmain\u002Fexample\u002Fcomparison.png)\n\n上图就是用 Intelligrapher 生成的实际效果——从数据到成图，一句话的事。深蓝实线是机器 A，砖红虚线是机器 B，阴影带表示方差范围，配色来自 Engineering Structures 的风格库。\n\n\\---\n\n## 这玩意到底能干啥\n\n一句话：**你描述需求，它给你代码**。\n\n比如你跟 Claude 说：\n\n```\n\u002Fintelligrapher 画一张分组柱状图，对比三组材料的抗压强度，\n风格用 Geotechnique 的配色，误差棒标上，保存为 PDF\n```\n\nClaude 会：\n\n1. 从知识库里查出\"材料强度对比\"该用什么单位（MPa）、坐标轴怎么标\n2. 从审美库里捞出 Geotechnique 风格的色板（蓝、橙、灰那套）\n3. 从模板库里取出 `bar-chart.py` 的骨架\n4. 把色板和规范填进占位符，吐出一整段可直接运行的 Python 代码\n\n全程你不用碰 matplotlib 文档。\n\n\\---\n\n## 这个项目中的三个库是怎么配合的\n\n```\n你的一句话需求\n        │\n        ▼\n┌──────────────────────────────────────┐\n│ 1. 解析需求 → domain + figure\\_type    │\n│ 2. 查知识库 → 坐标轴规范、标注符号    │\n│ 3. 查审美库 → 色板、字体、线宽        │\n│ 4. 取模板   → matplotlib 代码骨架     │\n│ 5. 填空     → 注入参数 → 完整脚本     │\n└──────────────────────────────────────┘\n        │\n        ▼\n   直接运行的 .py 文件\n```\n\n三个库各司其职：\n\n* **知识库**（`references\u002Fknowledge\u002F`）：每个领域一份 markdown，告诉你这个圈子里图该怎么画。土木工程默认自带，医学也有一份示例。内容包括常用图表类型、坐标轴规范、领域特殊要求（比如滞回曲线必须闭合、生存曲线要标 n=...）。\n* **审美库**（`references\u002Faesthetic\u002F`）：每份对应一个领域的主流顶刊，配色方案从论文里提取的。比如土木工程这套，主色 `#1f4e79` 深蓝、`#c55a11` 砖红，来自 Engineering Structures 的实际用色统计。\n* **模板库**（`assets\u002Ftemplates\u002F`）：5 份 `.py` 文件，顶部带 `CONFIG` 字典和 `{{...}}` 占位符。Claude 生成代码时会把占位符替换成具体值。模板本身就能直接跑，自带示例数据。\n\n\\---\n\n## 安装\n\n克隆到项目根目录就行：\n\n```bash\ncd your-project\u002F\ngit clone https:\u002F\u002Fgithub.com\u002FMrLee2R\u002FIntelligrapher.git .claude\u002F\n```\n\n或者手动把 `.claude\u002Fskills\u002F` 下的两个目录复制到你的项目里。重启 Claude Code 对话后生效。\n\n\\---\n\n## 使用方式\n\n装上之后，直接跟 Claude 说话就行，不用记命令。\n\n|你想干什么|怎么说|\n|-|-|\n|画图|`\u002Fintelligrapher 帮我画一张...`|\n|换领域|`\u002Fintelligrapher-updater 切换到医学领域`|\n|加新领域|`\u002Fintelligrapher-updater 初始化 materials-science 材料科学`|\n|换配色|`\u002Fintelligrapher-updater 更新 aesthetic 为 Nature 风格`|\n\n两个 Skill 是联动的。Claude 会根据你说的话自动判断该调用主 Skill 还是 Updater，不需要你指定。\n\n\\---\n\n## 目前内置了什么\n\n**知识库（领域规范）**\n\n|领域|覆盖内容|状态|\n|-|-|-|\n|土木工程|滞回曲线、骨架曲线、应力-应变、弯矩图、固结曲线等|默认|\n|医学|Kaplan-Meier、ROC、森林图、热图、瀑布图|示例|\n\n**审美库（顶刊配色）**\n\n|领域|参考期刊|主色板|\n|-|-|-|\n|土木工程|Engineering Structures, J. Struct. Eng., Geotechnique|`#1f4e79`, `#c55a11`, `#70ad47`|\n|医学|The Lancet, NEJM, Nature Medicine, JAMA, BMJ|`#004b87`, `#b8321a`, `#287c37`|\n\n**模板库（代码骨架）**\n\n|模板|图表|适用场景|\n|-|-|-|\n|`line-plot.py`|折线图 + 误差带|时间序列、机器对比、滞回骨架|\n|`bar-chart.py`|分组柱状图 + 误差棒|材料强度对比、分类数据|\n|`heatmap.py`|热图|相关性矩阵、基因表达|\n|`scatter-plot.py`|散点图 + 回归线|相关性分析、预测验证|\n|`box-plot.py`|箱线图|统计分布、异常值|\n\n\\---\n\n## 🎓 提示词教程：怎么跟 Intelligrapher 说话最有效\n\n很多人用 AI 画图，提示词写得不好，出来的东西总差点意思。这里整理了一套基于 Intelligrapher 内部机制的提示词写法，照着来，一次到位。\n\n### 1\\. 基础公式\n\n一个完整的绘图请求，最好包含这 5 个要素：\n\n```\n画一张 \\[图表类型]，\\[数据描述]，\\[坐标轴\u002F标签要求]，\\[风格要求]，\\[输出要求]\n```\n\n**✅ 好的示例：**\n\n```\n\u002Fintelligrapher 画一张折线图，对比两台机器在 20-120 次试验中的平均完成时间，\n带误差阴影带，x轴标 Number of Trials，y轴标 Average Time (s)，\nEngineering Structures 风格，深蓝和砖红配色，保存为 300 DPI 的 PNG\n```\n\n**❌ 不太好的示例：**\n\n```\n帮我画个图\n```\n\n太模糊了，Claude 不知道你想要什么，只能猜。猜错了你得来回改，浪费 token。\n\n### 2\\. 领域指定技巧\n\nIntelligrapher 默认走土木工程的规范。如果你做别的领域，有三种方式切换：\n\n**方式 A：临时覆盖（一句话）**\n\n```\n\u002Fintelligrapher 用医学领域的规范画一张 Kaplan-Meier 生存曲线...\n```\n\n**方式 B：切换默认领域（持久）**\n\n```\n\u002Fintelligrapher-updater 切换到医学领域\n```\n\n之后所有请求默认走医学规范，直到你再次切换。\n\n**方式 C：初始化新领域**\n\n```\n\u002Fintelligrapher-updater 初始化 materials-science 材料科学\n```\n\n会在知识库和审美库下生成骨架文件，你自己填内容。\n\n### 3\\. 风格控制技巧\n\n配色方案来自审美库，有几种调用方式：\n\n|你的说法|Intelligrapher 怎么做|\n|-|-|\n|\"Engineering Structures 风格\"|读取 `aesthetic\u002Fcivil-engineering.md`|\n|\"Lancet 风格\"|读取 `aesthetic\u002Fmedicine.md`|\n|\"Nature 风格\"|如果存在 `aesthetic\u002Fnature.md` 就读，否则临时构造|\n|\"用蓝色和橙色\"|临时构造色板，不读审美库|\n|\"配色要色盲友好\"|读取 `guidelines\u002Fcolor-theory.md`，避开红绿组合|\n\n**技巧：** 如果你常投某个期刊，建议直接初始化该期刊的审美库文件，以后直接说期刊名就行。\n\n### 4\\. 数据相关技巧\n\n**有数据文件的情况：**\n\n```\n\u002Fintelligrapher 数据在 D:\\\\\\\\data\\\\\\\\results.xlsx，第一列是时间，第二列是温度，\n画一张折线图...\n```\n\nClaude 会读取实际数据，确保代码里的数据路径正确。\n\n**没数据文件、需要示例数据的情况：**\n\n```\n\u002Fintelligrapher 画一张箱线图，假设有 4 组数据，每组 200 个样本...\n```\n\n模板自带随机数据，你可以直接跑起来看效果，再替换成自己的。\n\n**数据格式检查：**\n\nIntelligrapher 内置了 `validate\\_data.py`，会根据你选的图表类型检查数据列是否齐全。比如选 `bar-chart` 需要 `category` 和 `value` 列，如果缺少会提示你。\n\n### 5\\. 输出格式控制\n\n```\n保存为 SVG             ← 矢量图，适合论文插图\n保存为 PDF             ← 矢量图，适合 LaTeX\n保存为 PNG，300 DPI    ← 位图，适合 PPT\n保存为 TIFF，600 DPI   ← 高位图，适合印刷\n同时输出 SVG + PNG     ← 两种格式各一份\n```\n\n### 6\\. 进阶：直接修改模板\n\n如果你发现某个图表类型 Intelligrapher 没有覆盖，可以：\n\n1. 找一个最接近的模板复制一份\n2. 改名叫 `your-figure.py`\n3. 顶部保留 `CONFIG` 字典和 `{{...}}` 占位符\n4. 更新 `templates\u002FREADME.md`\n\n下次就能直接调用：\n\n```\n\u002Fintelligrapher 用 your-figure 模板画一张...\n```\n\n### 7\\. 常见踩坑\n\n|坑|原因|解决|\n|-|-|-|\n|中文乱码|字体不支持中文|在提示词里加\"用 SimHei 字体\"或直接说\"中文标签\"|\n|颜色太艳|用了默认 matplotlib 色板|明确说\"顶刊配色\"或指定审美库|\n|图太大\u002F太小|figsize 不合适|说\"单栏图宽\"或\"双栏图宽\"，Intelligrapher 会自动换算|\n|坐标轴单位不对|知识库没加载|明确指定领域，如\"土木工程的规范\"|\n\n\\---\n\n## 目录结构速览\n\n```\n.claude\u002Fskills\u002F\n├── intelligrapher\u002F\n│   ├── skill.md                       # 核心入口\n│   ├── .current-domain                # 当前领域标记\n│   ├── assets\u002F\n│   │   └── templates\u002F                 # 5 份 .py 模板\n│   │       ├── line-plot.py\n│   │       ├── bar-chart.py\n│   │       ├── heatmap.py\n│   │       ├── scatter-plot.py\n│   │       └── box-plot.py\n│   ├── references\u002F\n│   │   ├── knowledge\u002F                 # 领域图表规范\n│   │   │   ├── civil-engineering.md\n│   │   │   └── medicine.md\n│   │   ├── aesthetic\u002F                 # 顶刊配色方案\n│   │   │   ├── civil-engineering.md\n│   │   │   └── medicine.md\n│   │   └── guidelines\u002F                # 通用绘图指南\n│   │       ├── color-theory.md        # 色盲友好、WCAG 对比度\n│   │       ├── journal-styles.md      # Elsevier\u002FSpringer\u002FNature 排版\n│   │       └── figure-types.md        # 图表类型决策树\n│   └── scripts\u002F\n│       ├── apply\\_aesthetic.py         # 配色注入\n│       └── validate\\_data.py           # 数据格式检查\n│\n└── intelligrapher-updater\u002F\n    ├── skill.md                       # 更新器入口\n    ├── assets\u002F\n    │   └── knowledge-skeleton.md      # 新领域骨架\n    ├── references\u002F\n    │   ├── update-protocol.md         # 安全更新流程\n    │   ├── domain-registry.md         # 领域注册表\n    │   └── schema-spec.md             # 格式校验标准\n    └── scripts\u002F\n        ├── init\\_domain.py             # 初始化新领域\n        ├── switch\\_domain.py           # 切换默认领域\n        └── validate\\_structure.py      # 结构校验\n```\n\n\\---\n\n## 扩展：加一个新领域\n\n假设你是计算机视觉方向的，想要一套 CVPR\u002FICCV 风格的配色和图表规范。\n\n**Step 1 — 初始化骨架：**\n\n```\n\u002Fintelligrapher-updater 初始化 computer-vision 计算机视觉\n```\n\n这会生成两个空文件：`knowledge\u002Fcomputer-vision.md` 和 `aesthetic\u002Fcomputer-vision.md`。\n\n**Step 2 — 填知识库：**\n\n打开 `knowledge\u002Fcomputer-vision.md`，按这四个板块填：\n\n* **常用图表类型**：PR 曲线、mAP 对比表、混淆矩阵、注意力热力图...\n* **坐标轴规范**：横轴一般是 epoch \u002F iteration \u002F 阈值，纵轴是 accuracy \u002F mAP \u002F IoU\n* **标注符号表**：IoU、mAP@0.5、AP50、F1-score 这些符号怎么写\n* **领域特殊要求**：比如 PR 曲线必须标 baseline、对比实验必须标星号显著性\n\n**Step 3 — 填审美库：**\n\n打开 `aesthetic\u002Fcomputer-vision.md`：\n\n* **目标期刊**：CVPR、ICCV、ECCV、TPAMI\n* **主色板**：去 CVPR 近几年的论文里吸色，或者用这套默认的：`#1f4e79`, `#c55a11`, `#70ad47`\n* **辅助色板**：灰阶，用于背景和网格\n* **字体字号**： conferences 通常要求 sans-serif，如 Helvetica 或 Arial\n* **线型标记**：线宽 1.5，标记循环 `o`, `s`, `D`\n\n**Step 4 — 校验：**\n\n```bash\npython .claude\u002Fskills\u002Fintelligrapher-updater\u002Fscripts\u002Fvalidate\\_structure.py \\\\\n    .claude\u002Fskills\u002Fintelligrapher\u002Freferences\u002Fknowledge\u002Fcomputer-vision.md knowledge\n```\n\n通过了就能用了。\n\n\\---\n\n## 一些你可能想知道的\n\n**Q：修改 skill 文件后要重启 Claude Code 吗？**\n\n项目级 Skill 是即时生效的。改完 `.claude\u002Fskills\u002F` 下的文件，**重启当前对话**就行，不需要重新打包上传。这是比 ZIP 包方式最爽的地方。\n\n**Q：Claude 没自动触发 Intelligrapher 怎么办？**\n\n可能是 `skill.md` 里的 `description` 写得不够像用户请求。你可以去 `intelligrapher\u002Fskill.md` 里加一些触发词，比如 \"matplotlib 科研图\"、\"seaborn 可视化\"、\"顶刊配色\"、\"论文插图\"。\n\n**Q：模板里的占位符都有哪些？**\n\n全部列在这里：\n\n|占位符|类型|说明|\n|-|-|-|\n|`{{COLOR\\_PALETTE}}`|JSON 数组|主色板，如 `\\[\"#1f4e79\", \"#c55a11\"]`|\n|`{{FONT\\_FAMILY}}`|字符串|字体族|\n|`{{TITLE\\_FONTSIZE}}`|整数|标题字号|\n|`{{LABEL\\_FONTSIZE}}`|整数|轴标签字号|\n|`{{TICK\\_FONTSIZE}}`|整数|刻度字号|\n|`{{LINE\\_WIDTH}}`|浮点数|线宽|\n|`{{MARKER\\_SIZE}}`|浮点数|标记大小|\n|`{{BAR\\_WIDTH}}`|浮点数|柱宽|\n|`{{ALPHA}}`|浮点数|透明度|\n|`{{XLABEL}}`, `{{YLABEL}}`|字符串|坐标轴标签|\n|`{{TITLE}}`|字符串|图标题|\n|`{{LEGEND\\_LOC}}`|字符串|图例位置|\n|`{{SAVE\\_PATH}}`|字符串|保存路径|\n|`{{GRID}}`|布尔值|是否显示网格|\n|`{{ANNOT}}`|布尔值|热图是否标注数值|\n|`{{CMAP}}`|字符串|热图 colormap|\n|`{{FMT}}`|字符串|热图数值格式|\n\n**Q：怎么调试用？**\n\n生成的代码里加一行 `print(CONFIG)`，就能看到所有占位符的最终值。\n\n\\---\n\n## 贡献\n\n欢迎 PR 和 Issue。如果你搞了一个新领域的知识库或者一套新配色，直接提 PR 就行。有几个方向特别缺人：\n\n* **更多领域**：物理、化学、生物、经济学... 只要是发论文需要画图的领域都欢迎\n* **更多模板**：森林图、小提琴图、桑基图、三维图...\n* **更多顶刊配色**：Nature Methods、Science、Cell 等\n\n提 PR 的时候记得更新 `domain-registry.md`。\n\n\\---\n\n## License\n\nMIT。随便用，改也行，商用也行，但出问题别找我（虽然大概率不会出问题）。\n\n\\---\n\n\u003Cp align=\"center\">\n  \u003Ci>画好看的图，让审稿人少挑点毛病。\u003C\u002Fi>\n\u003C\u002Fp>\n\n","Intelligrapher 是一个专为科研绘图设计的智能助手，旨在简化从数据到高质量图表的生成过程。其核心功能包括一个知识库、审美库和模板库，分别负责提供领域规范、顶刊配色方案以及可直接运行的 Python 代码框架。通过解析用户需求并自动填充相应参数，Intelligrapher 能够快速生成符合学术出版标准的图形脚本，特别适用于需要频繁绘制专业图表的研究人员或学生，如土木工程中的滞回曲线、医学领域的 Kaplan-Meier 曲线等场景。此工具极大减少了手动调整 matplotlib 参数的时间，提高了工作效率。",2,"2026-06-11 04:10:14","CREATED_QUERY"]