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()或自定义函数,除非用户明确要求 - 说明内容优先写入代码注释,不在代码块外长篇解释