该技能用于基于文件的大气或气候研究,适合需要真实项目结构而非一次性回答的任务,触发场景包括 NetCDF、GRIB 等数据处理。
主要原则是「先思考再编码」:不假设、不隐藏困惑、显式说明假设;存在不确定或多种解释时应询问而非默默选择。
资料给出的硬性规则包括:配色使用 import cmaps 加离散色阶,禁止 matplotlib 内置色图(jet、rainbow、viridis);图内不添加标题或数据来源标记;每轮 RR 都要用 Read 工具打开实际渲染的 PNG 审阅,不能只看代码判断;复用项目自有目录布局,仅在不存在时回退到 data_processed/ 与 figN/;计算与绘图分成不同脚本,补图不得改动计算;在任何合并、比较或绘图前先核对坐标命名(lat/latitude、lon/longitude)与约定(0–360 与 −180/180)。
工作流为先理解数据(变量、维度、坐标、单位)再执行;初始色阶依据领域知识选择,在 RR 循环中细化,而非事先剖析。流程分为:新增或修改计算/绘图走执行→RR→文档;仅修图走补丁→RR→文档;审查已有渲染图只走 RR。
执行阶段拆分为计算与绘图。计算前先读 compute-standards.md,先归一化坐标(latitude 重命名为 lat、处理经度约定、确保纬度自南向北),中间结果保存到 data_processed/*.nc 并保留 units 与 long_name 属性。绘图前先读 plot-standards.md,从保存的中间结果而非原始数据读取;色图用 import cmaps 与离散色阶,绝对量用顺序色图,异常/差值用发散、对称、以 0 为中心的色图,可比面板共享色图与范围。资料还提供了温度、降水、SST、位势、SLP、垂直速度及通用异常等变量的色图速查,以及面板标签、色标(须显示单位)、字体、等值线、矢量与打点、导出 PNG 600 dpi + SVG 与 bbox_inches="tight" 的具体规范。
补丁阶段只做最小改动,不重构目录或重写计算,仅重渲染受影响的图。RR 循环读 review.md 与 plot-standards.md,逐轮打开实际 PNG 检查硬性规则与快速否决清单,做数值、单位、空间形态的合理性判断,将问题归类为视觉缺陷、数据/诊断问题或科学问题;视觉缺陷改绘图代码重渲染,数据问题改计算并重绘,科学问题则标记 BLOCKED 并停止,干净则 PASS 停止。同一缺陷两次修复后仍存在,需从头复查数据、坐标、单位、dtype;最多 10 轮,未通过则向用户列出全部遗留问题。
文档阶段在 RR 达到 PASS 后读 readme-template.md,编写或更新中文 README.md:新项目写完整 README,后续修改追加到「版本更新」并只更新受影响章节;只产出 README.md。失败规则:同一错误两次针对性修复后仍出现,从头复查数据、坐标、单位、dtype;修改既有代码时保持原有代码风格;仅在本地文档失败后才搜索网络。资料未提供安装命令、收费与平台信息。