R Style

撰写R脚本必须遵循本规范,开发包除外。

Victory-Hugo Updated

File contents

R 代码风格

1. 线性执行

代码从上到下顺序执行,不封装函数。图形逐层保存为 p、p2、p3 等。

2. 注释格式

功能区块:

#* =====区块名称=====

步骤说明使用中文普通注释,并以动词开头:

# 读取数据
# 绘制基础图形

参数含义使用行末 #* 注释:

fill = Group, #* 填充颜色对应 Group 列
size = 3      #* 点大小

3. 数据处理

读取数据后使用 knitr::kable(head(df1)) 预览,再直接进行后续处理,不封装数据读取逻辑。

4. 变量命名

  • 图形:p、p2、p3 等
  • 数据框:df1、df2、df3 等
  • 多词变量:使用下划线连接

5. 包加载

所有 library() 放在脚本顶部,每行一个,不添加注释。

6. PDF 出图

任何情况下,都需要导出可在 Illustrator 中逐标签独立编辑的 PDF:

  • 使用 grDevices::pdf(..., family = "Arial", useDingbats = FALSE)
  • 使用项目内注册的 Arial AFM 字体度量
  • 不使用 cairo_pdf(),避免连续文字被合并到同一 BT...ET 文本对象
  • 验收要求:BaseFont 为 /Arial,且每个 BT...ET 中最多包含一个 Tj 或 TJ

7. 输出要求

  • 直接输出代码
  • 代码按顺序可执行
  • 不使用 main()、tryCatch()、invisible() 或自定义函数,除非用户明确要求
  • 说明内容优先写入代码注释,不在代码块外长篇解释

Victory-Hugo/S2-Agent-Skill/tree/main/skills/code/自制/r-style commit 168c3f4781

Frequently asked questions

npx skillmds@latest add victory-hugo/r-style