【R语言】-核密度估计图绘制

本期介绍了利用R语言ggplot2包绘制核密度估计图。

核密度估计图(Kernel Density Estimation, KDE),是在概率论中用来估计未知的密度函数,属于非参数检验方法之一,由Rosenblatt (1955)和Emanuel Parzen(1962)提出,又名Parzen窗(Parzen window)。分析核密度函数时主要观察其面积,而不是取值。核密度图中纵轴与横轴所围成的面积为1。

1 数据准备

数据输入格式(csv格式):

2 R包加载及数据导入

#下载包#

install.package("ggplot2")

#加载包#

library(ggplot2)

library(reshape2)

#数据载入#

data  = read.table(file = 'C:/Rdata/jc/density1.csv', sep = ',', header = T) #header=T表示数据中的第一行是列名,如果没有列名就用 header=F

# 转换数据成长数据格式(ggplot常用)

data = melt(data)            # melt为reshape2的函数

head(data)

如基因表达量数据或其他需要log函数处理可用下列代码

#data=log10(data[,2]+0.0001) #加0.0001主要为了计算有0不好计算,2列进行计算;如有2到12列进行计算则用[,2:12]

#round(data,2)

#data=data.frame(data)

#head(data)

#write.csv(data,'C:/Rdata/jc/density1.csv') #数据导出

#write.table(data,'C:/Rdata/jc/density1.txt')

3 密度图绘制

#基础密度图绘制#

p = ggplot(data, aes(x =value))#x轴表示基因表达值,y轴表示频率就不需要指定

p + geom_density(color = "black", #线和点的颜色

                 fill = "gray") #填充颜色

图1 基础核密度图

#美化-线条#

p + geom_density(aes(color = variable))#按照不同组改变线条颜色

 图2 未填充核密度图

#美化-填充#

p + geom_density(aes(fill = variable), #按照不同组改变填充颜色

                 alpha=0.5, #调整透明度

                 linetype = 1, # 线条类型1是实线,2是虚线

                 size=0.5    # 线条粗细

                 )  

# fill   指填充颜色

# color  指线和点的颜色

# colour 指图形边界颜色

图3美化+填充核密度图

好了本次分享就到这里。

关注公众号,发送“核估计密度图”获得完整代码

猜你喜欢

转载自blog.csdn.net/weixin_54004950/article/details/128297224
今日推荐