37 累积曲线
37.1 什么是累积曲线?
累积曲线,全称是”经验累积分布函数”(ecdf)
在X轴映射所有数值,在Y轴映射排名的累积占比。最后通过点图和梯度连接线来进行可视化数据。就出现了简单的经验累积分布函数(ecdf)
为了理解这个抽象的概念,我们用学生成绩表的累积曲线举个例子。
学生的语文成绩如下:
第一列是学生名称,第二列是语文成绩。
绘图时,数据会按照从小到大排序并计数,根据所占总数的比例,不断累积,最终如下图的蓝色所示。
从图中可以看出(红线),有50%的学生语文成绩在60分以下。
37.2 绘图前的数据准备
demo数据可以在https://www.bioladder.cn/shiny/zyp/bioladder2/demoData/lolly/demoData.txt下载。
包含2个维度的数据,用生物学常用的搜库结果举例。每一列是个样本,每一行是个基因。
37.3 R语言怎么画累积曲线
# 加载R包,没有安装请先安装 install.packages("包名")
library(ggplot2)
library(reshape2)
# 读取累积曲线数据文件
= read.delim("https://www.bioladder.cn/shiny/zyp/bioladder2/demoData/ecdf/demo.txt",
df row.names = 1)
= melt(df) # reshape2中的函数,宽数据转换为长数据
df $value = log(df$value) # 为方便观察,做log变化,以实际数据是否需要为准
df
# 绘图
ggplot(df,
aes(
x=value,
color=variable
+
))stat_ecdf( # ggplot2中的经验累积分布函数
size=2 # 线条粗细
)
37.4 BioLadder生信云平台在线绘制累积曲线
不想写代码?可以用BioLadder生信云平台在线绘制累积曲线。
网址:
累积曲线-BioLadder生物信息在线分析可视化云平台www.bioladder.cn/web/#/chart/67