讲师中心 微信公众号
AI工具推荐 视频效率加速

nature-figure

Polar Sponsor
爱发电 赞助
.NET 9.0

使用 Python(matplotlib)或 R(ggplot2)为《自然》系列期刊生成出版级图表。用户需要创建、润色或重新设计图表时触发。

Generate 符合自然组合视觉标准的多面板科学人物: 正确排版、 语义色彩调色板、 可访问设计、 可编辑 SVG 输出

功能概述

Generate 符合自然组合视觉标准的多面板科学人物: 正确排版、 语义色彩调色板、 可访问设计、 可编辑 SVG 输出是一项面向实际任务的技能。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。

核心要点

  • 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
  • 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
  • 从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。

使用与执行

实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。

结果检查与注意事项

执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

nature-figure

用途

生成符合 Nature 期刊系列视觉规范的多面板科研图表:字体规范、语义化配色方案、无障碍可访问设计,并输出可编辑的 SVG 格式文件。

触发条件

当用户提及以下任一内容时激活:

  • "画图" / "figure" / "plot" / "科研绘图"
  • "Nature figure" / "publication figure" / "publication plot"
  • "matplotlib" / "ggplot" / "seaborn"
  • "配色" / "color palette" / "color scheme"
  • 希望优化或重排现有图表

Nature 图表规范

字体排印(Typography)

  • 字体族:使用 Arial 或 Helvetica(无衬线字体;图表中严禁使用 Times New Roman)
  • 印刷成品最小字号:7 pt(适用于坐标轴标签、刻度标签)
  • 面板标签(a, b, c…):8 pt 加粗,小写字母
  • 图表标题(如有):不得嵌入图中,应置于图注(legend)内
  • 所有文字必须可编辑(禁止光栅化)

尺寸与分辨率

格式 宽度 分辨率
单栏 89 mm(3.5 英寸) ≥300 DPI
1.5 栏 120 mm(4.7 英寸) ≥300 DPI
双栏 183 mm(7.2 英寸) ≥300 DPI
线条图(Line art) 不限 600 DPI
最终投稿文件 PDF 或 TIFF 优先使用矢量格式

配色方案(Nature 认可、色觉障碍友好)

NATURE_COLORS = {
    "blue":    "#4878CF",
    "red":     "#D65F5F", 
    "green":   "#6ACC65",
    "orange":  "#EE854A",
    "purple":  "#956CB4",
    "teal":    "#82C6E2",
    "brown":   "#D5BB67",
    "gray":    "#8C8C8C",
    # 色觉障碍友好主色对:
    "cb_blue": "#0072B2",
    "cb_orange":"#E69F00",
}
  • 禁止同时使用纯红色与纯绿色(存在色觉障碍冲突)
  • 为保障可访问性,须结合填充符号与不同几何形状,不可仅依赖颜色区分
  • 灰度模式下各元素仍须清晰可辨

面板结构(Panel Architecture)

  • 每个面板传达一个明确结论
  • 面板 (a):概览图 / 示意图 / 代表性图像
  • 面板 (b–d):定量证据支持
  • 末尾面板:对比分析或普适性验证
  • 面板标签为 a, b, c(小写加粗,置于左上角)
  • 白色背景;网格线极简(浅灰色,0.5 pt 线宽)
  • 杜绝“图表垃圾”(chartjunk):移除顶部与右侧坐标轴边框(spines)

统计标注(Statistical Annotations)

  • 误差线(Error bars):图注中必须明确定义(如 mean ± s.d. 或 ± s.e.m.)
  • 显著性标记:*, **, ***, **** 分别对应 p < 0.05、0.01、0.001、0.0001;推荐直接报告精确 p 值
  • 样本量 n 必须注明(例如:n = 5 次独立实验)
  • 箱线图(Box plots):需标示中位数、四分位距(IQR)、须线延伸至 1.5×IQR,并叠加原始数据点

工作流程

第 0 步:从数据文件自动生成图表(最快路径)

若用户提供 CSV、Excel 或 JSON 数据文件:

python3 ~/.openclaw/workspace/skills/nature-paper-hub/scripts/auto_figure.py 
  --input  
  --output ~/Downloads/figure_.pdf 
  --title "[figure title]" 
  --xlabel "X axis label" 
  --ylabel "Y axis label" 
  --type [auto|line|bar|scatter|heatmap|box]

该脚本将自动识别列类型、选择合适图表类型、应用 Nature 风格,并输出 PDF 与 PNG 文件。

第 1 步:收集需求(尚无数据文件时)

向用户提问:

  1. 您拥有哪些数据?(可粘贴 CSV 内容、描述各列含义,或直接提供数值)
  2. 需要几个面板?每个面板展示什么内容?
  3. 图表宽度要求:单栏 / 1.5 栏 / 双栏?
  4. 编程语言偏好:Python(matplotlib/seaborn)还是 R(ggplot2)?
  5. 是否有特定配色要求,或目标期刊子风格(sub-style)?

第 2 步:生成图表代码

Python 模板(matplotlib):

import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
import numpy as np

# --- Nature 风格设置 ---
plt.rcParams.update({
    'font.family': 'Arial',
    'font.size': 8,
    'axes.linewidth': 0.8,
    'axes.spines.top': False,
    'axes.spines.right': False,
    'xtick.major.width': 0.8,
    'ytick.major.width': 0.8,
    'xtick.major.size': 3,
    'ytick.major.size': 3,
    'xtick.direction': 'out',
    'ytick.direction': 'out',
    'figure.dpi': 300,
    'savefig.dpi': 300,
    'savefig.bbox': 'tight',
    'savefig.pad_inches': 0.05,
    'pdf.fonttype': 42,   # PDF 中文字可编辑
    'ps.fonttype': 42,
})

COLORS = {
    "blue": "#4878CF", "red": "#D65F5F", "green": "#6ACC65",
    "orange": "#EE854A", "purple": "#956CB4", "teal": "#82C6E2",
    "cb_blue": "#0072B2", "cb_orange": "#E69F00",
}

# --- 图表布局 ---
fig = plt.figure(figsize=(7.2, 4.0))  # 双栏宽度,高度可调
gs = gridspec.GridSpec(1, 3, figure=fig, wspace=0.4, hspace=0.4)

ax_a = fig.add_subplot(gs[0])
ax_b = fig.add_subplot(gs[1])
ax_c = fig.add_subplot(gs[2])

# --- 面板标签 ---
for ax, label in zip([ax_a, ax_b, ax_c], ['a', 'b', 'c']):
    ax.text(-0.15, 1.05, label, transform=ax.transAxes,
            fontsize=8, fontweight='bold', va='top', ha='right')

# --- 此处填入您的数据 ---
# ax_a: ...
# ax_b: ...
# ax_c: ...

plt.savefig('figure1.pdf', format='pdf')
plt.savefig('figure1.png', dpi=300)
print("Saved: figure1.pdf, figure1.png")

R 模板(ggplot2):

library(ggplot2)
library(patchwork)

# Nature 主题
theme_nature <- function() {
  theme_classic(base_size = 8, base_family = "Arial") +
  theme(
    axis.line = element_line(linewidth = 0.5),
    axis.ticks = element_line(linewidth = 0.5),
    axis.ticks.length = unit(2, "pt"),
    strip.background = element_blank(),
    legend.key.size = unit(3, "mm"),
    plot.margin = margin(2, 2, 2, 2, "mm")
  )
}

nature_colors <- c(
  blue = "#4878CF", red = "#D65F5F", green = "#6ACC65",
  orange = "#EE854A", purple = "#956CB4", teal = "#82C6E2"
)

# --- 此处填入您的图表代码 ---
# p1 <- ggplot(...) + theme_nature()
# p2 <- ggplot(...) + theme_nature()
# combined <- p1 | p2
# ggsave("figure1.pdf", combined, width = 183, height = 80, units = "mm", dpi = 300)

第 3 步:校验(Validate)

输出前务必检查以下各项:

  • 所有元素字体 ≥ 7 pt
  • 无顶部/右侧坐标轴边框(spines)
  • 使用色觉障碍友好配色方案
  • 误差线定义完整
  • 面板标签存在且格式正确(a, b, c 小写加粗)
  • 分辨率 ≥ 300 DPI(线条图需 ≥ 600 DPI)
  • 图表宽度匹配所选栏宽格式
  • 输出 PDF/SVG 以确保矢量可编辑性

第 4 步:图注(Figure legend)

生成配套的图注文字:

  • 以加粗 “Figure X |” 开头
  • 简短标题(一句话)
  • 每面板一句说明
  • 误差线定义
  • 样本量 n 值及所用统计检验方法
  • 图像类图表需注明比例尺(scale bar)定义

常用图表类型

折线图(Line plot,适用于时间序列 / 趋势分析)

使用带标记点的实线;不同组别采用不同线型 + 颜色区分。

柱状图(Bar chart)

类别较多时建议使用横向柱状图;应在柱体上叠加原始数据点。 使用 plt.bar() 并设置 edgecolor='black', linewidth=0.5。

散点图(Scatter plot)

若用于展示相关性,须添加回归线及 95% 置信区间(CI)。 图中需标明 Pearson/Spearman 相关系数 r 与 p 值。

热图(Heatmap)

相关性分析宜用发散型色阶(如 RdBu_r),强度表达宜用顺序型色阶。 必须包含带标签和单位的色标(colorbar)。

箱线图 / 小提琴图(Box/Violin plot)

必须叠加原始数据点(使用 stripplot 或 geom_jitter)。 需注明每组样本量 n。

示意图 / 机制图(Schematic / Mechanism diagram)

推荐使用 BioRender(biorender.com)或 Inkscape 绘制示意图。 导出为 SVG 后嵌入主图。

输出内容

向用户提供以下全部内容:

  1. 完整、可直接运行的 Python 或 R 代码
  2. 按正确格式保存文件的操作说明(PDF + PNG)
  3. 配套的图注(legend)文字
  4. 投稿前需自查的核对清单
目录

热门AI工具

更多
超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

Seko
Seko Hot

一款AI视频创作工具,主要用于商汤科技推出的创编一体的AI短视频创作Agent,适合需要提升相关任务效率的用户。

相关专题

更多
Gradle插件开发入门教程
Gradle插件开发入门教程

本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。

0

2026.10.22

Gradle Wrapper配置教程
Gradle Wrapper配置教程

本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。

0

2026.10.22

Golangci-lint检查器使用教程
Golangci-lint检查器使用教程

本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。

0

2026.10.22

Gradle怎么构建Java项目
Gradle怎么构建Java项目

本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。

0

2026.10.22

PHP时间戳漏洞修复教程
PHP时间戳漏洞修复教程

本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。

0

2026.10.22

Golangci-lint配置文件与规则设置
Golangci-lint配置文件与规则设置

本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。

0

2026.10.22

Golangci-lint安装与入门教程
Golangci-lint安装与入门教程

本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。

0

2026.10.22

PHP2Shell高危漏洞修复教程
PHP2Shell高危漏洞修复教程

PHP2Shell漏洞是什么,哪些PHP版本和运行环境会受到影响,服务器应该如何检测与修复?本专题提供版本自查脚本、Linux与Docker升级命令、PHP-FPM和Apache排查步骤,以及修复验证、临时缓解和应急响应方案。

0

2026.10.22

剧云人物设定与关系管理教程
剧云人物设定与关系管理教程

本专题介绍剧云人物设定与关系管理,讲解角色小传、性格职业、人物目标、背景资料和关系网络的创建及维护方法。

0

2026.10.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn