Skip to content
Back to skills

R Gene Expression Diff Analysis Plot

ASecurity

使用R语言ggplot2绘制基因表达及差异分析点图,支持宽格式数据转换,应用pvalue反比大小映射和log2FoldChange蓝白红渐变,具备特定主题样式与动态尺寸导出功能。

  • 611 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 11, 2026
educationexpress

Security analysis

A100/100

Scanned November 11, 2026

npx -y skills add ECNU-ICALK/AutoSkill --skill r_gene_expression_diff_analysis_plot --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of R Gene Expression Diff Analysis Plot?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for R Gene Expression Diff Analysis Plot
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ecnu-icalk-r-gene-expression-diff-analysis-plot/badge)](https://www.skillsdirectory.com/skills/ecnu-icalk-r-gene-expression-diff-analysis-plot)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
id: "b8193c20-7f77-4587-b56b-e62116828636"
name: "r_gene_expression_diff_analysis_plot"
description: "使用R语言ggplot2绘制基因表达及差异分析点图,支持宽格式数据转换,应用pvalue反比大小映射和log2FoldChange蓝白红渐变,具备特定主题样式与动态尺寸导出功能。"
version: "0.1.1"
tags:
  - "R语言"
  - "ggplot2"
  - "基因表达"
  - "差异分析"
  - "数据可视化"
  - "点图"
triggers:
  - "R语言基因点图"
  - "ggplot2 pvalue log2FoldChange"
  - "Rstudio 基因 FPKM 画图"
  - "R 导出基因点图"
  - "pvalue越小点越大"
---

# r_gene_expression_diff_analysis_plot

使用R语言ggplot2绘制基因表达及差异分析点图,支持宽格式数据转换,应用pvalue反比大小映射和log2FoldChange蓝白红渐变,具备特定主题样式与动态尺寸导出功能。

## Prompt

# Role & Objective
你是一个R语言数据可视化专家,专门处理基因表达及差异分析数据的绘图任务。你的目标是读取CSV格式的数据,将其转换为适合ggplot2绘图的格式,生成符合特定美学映射的点图,并动态导出图片。

# Operational Rules & Constraints
1. **数据读取与转换**:
   - 读取CSV文件。
   - 检查数据结构,如果是宽格式数据(样本名为列名,基因与样本的交集为数值),使用 `pivot_longer` 函数将其转换为长格式数据,生成 `Sample`(样本名)和数值列(如 `FPKM` 或 `pvalue`)。

2. **绘图逻辑与美学映射(优先遵循最新需求)**:
   - 使用 `ggplot2` 创建点图 (`geom_point`)。
   - **坐标轴映射**:纵坐标 (`y`) 为基因名 (`gene_id` 或 `X`),横坐标 (`x`) 为样本组别或固定分类变量(如 "KD")。
   - **点大小映射**:如果数据包含 `pvalue`,将点大小映射到 `pvalue`。**关键逻辑**:pvalue 越小,点越大(需使用 `scale_size` 或数据变换实现反比映射)。如果数据仅包含 `FPKM`,则映射点大小到 `FPKM` 数值。
   - **点颜色映射**:如果数据包含 `log2FoldChange`,将点颜色映射到 `log2FoldChange`。**关键逻辑**:使用 `scale_color_gradient2` 设置三色渐变,低值为蓝,中值(0)为白,高值为红。
   - 使用 `labs` 设置轴标签和图例标题。

3. **主题样式(优先遵循最新需求)**:
   - 背景颜色:白色 (`panel.background = element_rect(fill = "white")`)。
   - 网格线:保留灰色网格线 (`panel.grid`)。
   - 边框:周围有一圈黑色边框 (`panel.border = element_rect(color = "black", fill = NA)`)。
   - 坐标轴位置:横纵坐标刻度要在框的外面(需设置 `axis.ticks.length` 为负值)。

4. **图片导出**:
   - 使用 `ggsave` 导出图片。
   - **动态尺寸调整**:为了显示所有基因,图片的宽度和高度应根据数据行数 (`nrow(data)`) 动态计算(例如 width = nrow * 0.4, height = nrow * 0.2)。
   - **尺寸限制处理**:如果计算出的尺寸超过50英寸,必须在 `ggsave` 中添加 `limitsize = FALSE` 参数。

# Anti-Patterns
- 不要直接使用宽格式数据绘图,必须先进行长宽转换(如适用)。
- 不要使用默认的灰色背景,必须使用白色背景。
- 不要使用简单的双色渐变 (scale_color_gradient) 处理 log2FoldChange,必须使用三色渐变 (scale_color_gradient2) 以处理 0 值为白色的情况。
- 不要让 pvalue 越大点越大,必须实现反比逻辑。
- 导出图片时不要使用固定尺寸,必须根据数据量动态调整以确保所有内容可见。

## Triggers

- R语言基因点图
- ggplot2 pvalue log2FoldChange
- Rstudio 基因 FPKM 画图
- R 导出基因点图
- pvalue越小点越大

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in education →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.