← 返回 Skill 列表
extension
分类: 数据与分析无需 API Key

prism-style-plot

按 GraphPad Prism 的作图逻辑绘制投稿级科研图表。支持柱状图、箱线图、小提琴图、分组柱状图、XY 散点线图、生存曲线、饼图等 8 种数据表类型对应的图形。内置统计检验流程(t 检验、ANOVA + Tukey 事后比较、log-rank 等),自动完成显著性标注与精确 p 值输出。所有图表默认叠加个体数据点、使用色盲安全配色(Okabe-Ito)、L 形坐标轴、统一无衬线字体,符合 Nature/Cell 等期刊规范。用户只需上传实验数据并描述需求,即可获得可直接进论文的 PNG(300 dpi)+ PDF 矢量图及完整统计报告。 权限声明 本技能仅运行于本地环境,不联网、不需要任何外部 API 密钥或账号授权。 读取本地文件:读取用户提供的实验数据(CSV / Excel / 文本表格) 写入本地文件:在输出目录生成图片(PNG / PDF)和 Markdown 统计报告 安装 Python 依赖:在隔离虚拟环境中安装 matplotlib、seaborn、scipy、pandas、numpy 等绘图与统计库 执行本地脚本:运行技能内置的 Python 脚本生成图表 使用说明(可选但推荐) 上传或粘贴你的实验数据(CSV / Excel 均可) 用自然语言描述想要的图形类型,例如:「画一张柱状图,三组比较」「做一张生存曲线」 技能会自动识别数据表类型、选择合适的统计方法、生成 Prism 风格图表 输出包含:PNG 预览图、PDF 投稿矢量图、完整统计报告(含 Figure Legend)、精确 p 值

person作者: user_aabe55f8hubcommunity

verify — prism-style-plot 回归验证套件

技能自带的回归验证脚本,随技能包分发,换机器不丢验证能力。

文件

| 文件 | 覆盖范围 | |---|---| | verify_common.py | 公共工具:模拟数据生成(make_groups)、重叠检查、PASS/FAIL 报告 | | verify1_column.py | Column 表三大图型:prism_bars / prism_boxplot / prism_violin + ttest/ANOVA 统计 | | verify2_others.py | 其他表型:Grouped 手写分组柱、Survival KM、XY 4PL/linear、Contingency | | verify3a_dot_size.py | 点径自适应 + 配色越界 + 非参数检验 | | verify3b_zorder_layout.py | 抖动布局 + zorder 图层 + 长标签旋转 | | verify3c_edge_cases.py | 统计边界场景 + 3 表型 + 报告补强 | | verify4_twoway_posthoc.py | Two-way ANOVA 事后比较:交互显著→简单效应 / 纯加性→主效应 | | verify5_grouped_annotated.py | Grouped 图上简单效应显著性标注(交互数据,48h 起效示例) | | verify6_figsize_recommend.py | 画布推荐(recommend_shape / recommend_figsize,表型默认 + 关键词覆盖) | | verify7_ylim_small.py | ylim<1 值域:细粒度步长 + bracket 数据最大值收集 | | verify8_ylim_small_allsigns.py | ylim<1 修复全图型推广(下限分级 / boxplot 边框 / 负值) | | verify9_deep_matrix.py | 析因设计矩阵深度回归(组数×样本量×交互形态) | | verify10_deep_others.py | 其他表型深度回归(含 figsize 关键词覆盖) | | verify11_deep_edge.py | 深度边界/性能(NaN/inf、空组、n=1、预检、向量化;含墙钟耗时断言,强制串行) | | verify12_combined_panel.py | v2.7.0 多数据集合并面板图 + 总报告(compose_panel_figure / build_master_report) | | verify13_multi_sheet.py | v2.7.2 单 Excel 多 sheet 读取 → 合并面板图(read_excel_sheets) | | verify14_v28_additions.py | v2.8.0 新增 API 回归(23 项):误差线 5 口径 + n=0/n=1 防御、log 轴守卫、零基线只在跨零时画、堆叠柱/水平柱/配对连线三个新图型、CLD 字母(两入口一致/链式 a·ab·b)、断轴、标签折行、离群值 Grubbs/ROUT、RM one-way(SS 分解闭合 + F 自洽)、投稿合规自检(不误报 + 真违规必检出)、XY 模型族(power 真实参数恢复)、7 种事后方案 + 效应量单调性、risk 表计数单调不增、布局缓存容量护栏。每个 check 用独立固定种子,可单独重跑任一检查 | | build_deep_report.py | 把 verify9/10 的深度回归产物汇总成一个 HTML 报告 | | run_all.py | 一键回归入口(首选),跑固定 16 个 verify;无参数=全套,支持 --quick/--only <档位> | | run_full_suite.py | 备用入口(v2.7.6 明确):glob 自动发现 verify*.py/test*.py。仅当你另有自定义 verify 脚本、不想改 run_all.py 注册表时用——不保证执行顺序、不并行、不隔离耗时脚本,日常回归请用 run_all.py |

运行方式

# 遵循技能环境约定:先取 venv 解释器
PY=$(python ../../scripts/ensure_env.py 2>/dev/null || python scripts/ensure_env.py)

# 入口 1(首选):跑固定 16 个官方 verify(自动清理 output/)
$PY scripts/verify/run_all.py
$PY scripts/verify/run_all.py --keep-output   # 保留产物供人工复查

# 入口 2(备用,v2.3.1+):glob 自动发现当前目录所有 verify*.py + test*.py
# 仅当你有自定义 verify 脚本、不想改 run_all.py 注册表时使用
$PY scripts/verify/run_full_suite.py           # Markdown 表格输出
$PY scripts/verify/run_full_suite.py --json    # CI 友好 JSON 输出
$PY scripts/verify/run_full_suite.py /path/to  # 自定义 verify 目录

单跑一个用例(调试时):

$PY scripts/verify/verify1_column.py

输出

  • 产物(PNG/PDF/_report.md)写入 output/ 子目录,默认在回归全部通过后清理;
  • 退出码 0 = 全部 PASS,1 = 存在 FAIL;
  • 新增用例:命名 verifyN_*.py 放入本目录,并在 run_all.py 的 VERIFY_SCRIPTS 注册。

维护约定

  • 每次对 scripts/prism_theme.py 做改动,先 python -c "import prism_theme" 确认不崩, 再跑 run_all.py 确认无回归;
  • 回归失败立即还原改动,并记 status=reverted 到 learnings.jsonl。
  • output/ 不参与技能包分发:该目录是回归运行的副产物 (PNG/PDF/_report.md/html),体积可达 1.5M+,只应存在于本地。 交付/分享技能包前用 run_all.py(默认自动清理)或手动清空 output/, 不要把 output/ 内容带进技能包。run_all.py 默认行为已满足此约定; 如需在沙箱环境(回收站不可用)手动清理,直接删除 output/ 内文件即可。
  • 新增验证脚本必须带失败退出码:每个 verifyN_*.py 结尾必须 sys.exit(1 if fails else 0)(无 fails 列表时用 sys.exit(0 if ok else 1))—— run_all.py 靠子进程退出码判定 PASS/FAIL,缺退出码会让脚本内 FAIL 被误报为 PASS("假绿",v2.1.1 教训)。