Atlas / Skills / yuan1z0825 / `nature-figure` 技能

`nature-figure` 技能SAFE

skills/yuan1z0825/nature-figure

符合nature论文学术表达和科研绘图的Skill

Verdict
SAFE
Grade
B
Trust score
89 /100
Version
—
Hosts
—
License
Apache-2.0
Stars
50,645
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

English

nature-figure 用于设计、生成和审查投稿级科研图件,面向 Nature 系列、高影响力期刊、论文图版、机制示意图和 graphical abstract 草稿。

适合用它做什么

  • 根据数据、图注或论文结论生成 Python / R 绘图脚本和可编辑图件。
  • 将已有图件重画为更清楚的多面板论文 figure。
  • 按“一张 Figure 回答一个 Results 级科学问题”的默认逻辑规划多面板证据链,让各 panel 分别承担主证据、control、正交验证、扰动、机制或边界等不同推理角色,而不是只把同一结果换指标重画。
  • 规划 Figure 1、机制图、workflow、graphical abstract 或补充图。
  • 检查面板标签、配色与视觉层级、逐面板误差线、最终 PDF 实际字号、统计标注、source data 和导出格式;多面板图在渲染时自动检查同行/同列轴框、宽高、panel 标签锚点和重复间距是否在 1.5 pt 容差内,每次生成或修改布局后再检测文字—文字、文字—线条/曲线、页面裁切及可疑色块/图片边缘重合。
  • 区分旗舰 Nature 初投稿、主图终稿和 Extended Data 的文件契约,并执行 <250 词图注上限。
  • 对 Nature Machine Intelligence 单独执行 6 个主 display、最多 10 个 Extended Data、初投稿/终稿边界、300 dpi/180 mm 和 source data 要求;当前官网未给独立图注数字,保留 2018 官方 <300 英文词为历史建议线,整张图注建议 150–250 词且不是每个 panel 分别计算。
  • 在用户明确要求时,通过 OpenRouter Images API 调用 openai/gpt-image-2 生成 AI 概念示意图草稿。
  • 对 AI 辅助 graphical abstract 先定义单一中心信息、图件类型、目标读者和证据边界,再比较构图与可访问配色;投稿前单独核验目标期刊最新 AI 政策、科学准确性、版权、披露和 provenance。Nature Careers 专栏仅作为实践建议,不等于投稿许可。

工作方式

绘图前先建立图件契约,而不是直接套模板:

  • 核心结论:这张图要证明什么。
  • 证据层级:哪些面板是主证据,哪些是补充解释。
  • 多面板架构:先写 figure-level claim,再决定每个 panel 的独特证据角色以及主图、另一张图或 Extended Data/SI 的去向。
  • 图件原型:散点、箱线、热图、机制图、流程图、多面板组合等。
  • 后端选择:Python 或 R;第一次选择后会作为默认偏好复用。
  • 数据完整性:默认保留全部观测和指定变量,任何排除都记录规则与前后计数。
  • 模板兼容性:先核对科学含义、数据结构和变换条件,再决定精确复用、结构适配或只继承样式。
  • 投稿约束:尺寸、字体、色彩、分辨率、矢量格式和 source-data 可追溯性。
  • 子图对齐门:由 Python axes 或 R patchwork/gtable 在最终尺寸下测量真实 panel 矩形;横排 3/4 张等跨度 panel 自动保证等宽,普通网格及“左二右一 / 左一右二”等跨行布局自动推断,可靠错位阻断导出,free-positioned hero panel、inset 和 colorbar 只能带理由豁免。
  • 渲染碰撞门:最终 PDF 每次重绘后都生成 collision JSON;可靠碰撞必须修复,可疑 overlay 必须逐项复核。

典型请求

  • “把这组数据做成 Nature 风格多面板图,优先 Python。”
  • “参考 figures4papers 里 Nature Machine Intelligence 的布局,帮我补一个方法对比图。”
  • “重画这个机制示意图,导出 SVG/PDF,并给我 source data 表。”
  • “用 OpenRouter 生成 graphical abstract 草稿,但不要当作定量数据图。”

示例预览

Read from source at commit b109a72ff4f7OBSERVED · 2026-10-26
Advertisement
02

What it tells the agent

The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.

---
name: nature-figure
description: >-
  Create, revise, audit, and export manuscript scientific figures in Python or R.
  Use for 论文配图、科研绘图、多面板图 and submission-ready plots, or explicitly
  requested AI-generated graphical abstracts and mechanism schematics. Not for
  interactive dashboards, data cleaning, or statistics-only analysis.
---

# Nature Figure Making — Router

## Routing protocol

For a new task, load the core and matching resources below. Reuse already loaded guidance on follow-ups; load more only when the task needs it.

### 0. Check for graphical-abstract and AI-schematic routes

For every graphical-abstract planning, generation, revision, or audit task that
uses AI, read
[references/ai-graphical-abstract-workflow.md](references/ai-graphical-abstract-workflow.md)
first. It owns the message/audience brief, composition and palette workflow,
policy gate, human scientific review, disclosure boundary, and provenance
requirements. A Nature Careers article is practitioner advice, not submission
clearance; verify the current official policy for the exact target journal.

If the request is planning or auditing only, do not ask for Python or R unless
the user also asks to render or revise a data-driven figure.

If the user explicitly asks to generate a manuscript schematic, graphical abstract, mechanism diagram, concept illustration, or paper schematic with OpenRouter, GPT Image 2, an image-generation API, or similar wording, do **not** ask "Python or R?". This is a non-plotting AI-schematic route.

For this route:

1. Read [manifest.yaml](manifest.yaml) and the `always_load` files.
2. Read [references/ai-graphical-abstract-workflow.md](references/ai-graphical-abstract-workflow.md).
3. Read [references/openrouter-image-generation.md](references/openrouter-image-generation.md).
4. Use [scripts/generate_openrouter_schematic.py](scripts/generate_openrouter_schematic.py) when the user wants a real API call or a reproducible payload.
5. Treat output as a draft schematic / graphical abstract, not as a quantitative data panel. Do not invent experimental values, author logos, institutional marks, or unsupported mechanisms. Keep internal usefulness separate from submission eligibility.

If the user wants a hand-built, editable vector schematic (architecture, pipeline, agent or model block diagram, or mechanism flow) rather than an AI-generated image, do **not** ask "Python or R?". Read [references/vector-schematic-workflow.md](references/vector-schematic-workflow.md) and [references/vector-schematic-style-rules.md](references/vector-schematic-style-rules.md), confirm the brief with the user before drawing, and run `scripts/audit_svg_schematic.py` on the SVG before delivery. This route never plots data.

Only continue to the Python/R backend gate for plotting, charting, data visualization, or manuscript figure assembly tasks that are not explicit OpenRouter AI image-generation requests.

### 1. Load the manifest and the core layer

Read [manifest.yaml](manifest.yaml). It declares the `backend` axis, the allowed values, and the file paths each value maps to.

Also read every file listed under `always_load` (`static/core/contract.md` and `static/core/stance.md`). These hold the figure contract, the backend gate, the missing-runtime rule, the privacy rule, and the default operating stance that apply to every figure job.

### 2. Resolve the plotting backend

Backend selection applies only to rendering or editing plotting code. Reuse a choice already established in the same task and its follow-ups; do not ask again merely because a new message omits the language. Read-only figure review and backend-independent data inspection may proceed without this choice. If the backend remains unresolved, retain the one-time Python/R question and pause only dependent plotting steps. Explicit approval requirements and backend exclusivity remain in force.

Resolve the plotting backend from the current task before consulting the saved default. Decide the `backend` value in this order:

1. If the current request explicitly chooses Python or R, use that backend and save it with `scripts/nature_figure_backend.py set python` or `scripts/nature_figure_backend.py set r`.
2. If the request provides a clearly language-specific input file/workflow, use that backend and save it.
3. Otherwise reuse a Python/R choice already established in this task. If none exists, run `scripts/nature_figure_backend.py get` and use a returned `python` or `r` preference.
4. If neither a task choice nor a saved preference exists, ask exactly one concise question — **Python or R? I will remember this as your default.** — and pause only dependent plotting steps. After the user answers, save the answer before proceeding.

- `python` — matplotlib / seaborn.
- `r` — ggplot2 / patchwork / ComplexHeatmap.

Do not guess or choose a backend by aesthetics alone. Only recommend a backend when the user explicitly asks you to choose; then use `references/backend-selection.md`, state the reason, save the selected backend, and proceed. Once selected, the backend is **exclusive** for all drawing, previewing, exporting, and visual QA (see `core/contract.md`). This gate does not apply to the explicit OpenRouter AI-schematic route above.

### 3. Load the matching backend fragment

After the backend is resolved, Read the mapped fragment (`static/fragments/backend/python.md` or `static/fragments/backend/r.md`). It carries the backend-only execution rule and the publication quick-start (rcParams/theme and export helper). Do **not** load the other backend's fragment.

### 4. Build the figure using the loaded material

Apply the loaded material in this order:

1. Figure contract (`core/contract.md`) — write the core conclusion, map the evidence chain, classify the archetype, set the journal/export contract, before any code.
2. Multi-panel evidence architecture — when planning, restructuring, or auditing a labelled multi-panel figure, load `references/multipanel-evi
03

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codePASS
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
declared (4 observation(s))
Shell
none-observed
Dependencies
not all pinned
Secrets in source
none-found

Findings (8)

LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
tests/test_schematic_url_safety.py:41
response = {"data": [{"media_type": "image/png", "url": "http://127.0.0.1/x.png"}]}
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
scripts/generate_openrouter_schematic.py:150
return base64.b64decode(value)
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
requirements.txt
PyMuPDF
Why it matters. 1 requirement(s) not pinned with ==
Fix. pin exact versions
INFOInventory / provenance · inv.oversize · CWE-1104
assets/figures4papers/assets/ImmunoStruct_results_CEDAR.png
assets/figures4papers/assets/ImmunoStruct_results_CEDAR.png
Why it matters. 1281557 bytes not read
INFOInventory / provenance · inv.oversize · CWE-1104
assets/figures4papers/assets/RNAGenScape_schematic.png
assets/figures4papers/assets/RNAGenScape_schematic.png
Why it matters. 1000298 bytes not read
INFOInventory / provenance · inv.oversize · CWE-1104
assets/figures4papers/figure_Cflows/figures/diffusion_swiss_roll.png
assets/figures4papers/figure_Cflows/figures/diffusion_swiss_roll.png
Why it matters. 1794980 bytes not read
INFOInventory / provenance · inv.oversize · CWE-1104
assets/figures4papers/figure_ImmunoStruct/figures/bars_ablation_IEDB.png
assets/figures4papers/figure_ImmunoStruct/figures/bars_ablation_IEDB.png
Why it matters. 1160225 bytes not read
INFOInventory / provenance · inv.oversize · CWE-1104
assets/figures4papers/figure_RNAGenScape/figures/manifold_holes.png
assets/figures4papers/figure_RNAGenScape/figures/manifold_holes.png
Why it matters. 1019896 bytes not read

Gates applied: no_behavioural_pass.

Audited 2026-10-26 · audit v0.4.1 · source sha b109a72ff4f7full audit observations/trust-audit/skill/yuan1z0825__nature-figure.json · Report an issue / request a re-scan
04

Audit history

Every audit this skill has had.

DateSourceVerdictGradeScoreChange
2026-10-26b109a72ff4f7SAFEB89first audit
05

Questions

What does the nature-figure — yuan1z0825/nature-skills skill do?

符合nature论文学术表达和科研绘图的Skill

Is nature-figure — yuan1z0825/nature-skills safe to install?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.

What can nature-figure — yuan1z0825/nature-skills access on my machine?

The audit observed that it reaches the network. Each of those is consistent with what it says it does. Secrets in the source: none found.

How current is this page?

The grade is for one exact copy of the source (b109a72ff4f7), read on 2026-10-26. The repository is watched, and a new audit runs when it changes — this is the first audit.

Add this badge to your README

Shows this page's audit result and links back to it. It updates when the audit does.

ModelsAtlas audit badge

Markdown
[![ModelsAtlas audit: `nature-figure` 技能](https://modelsatlas.com/skills/yuan1z0825/nature-figure/badge.svg)](https://modelsatlas.com/skills/yuan1z0825/nature-figure/)

Not your listing, or something out of date? Claim or update your listing.

Advertisement