上海阿趣生物科技有限公司

13

手机商铺

qrcode
商家活跃:
产品热度:
  • NaN
  • 0.20000000000000018
  • 1.2000000000000002
  • 0.20000000000000018
  • 3.2
修饰蛋白定性研究
询价

上海阿趣生物科技有限公司

入驻年限:13

  • 联系人:

    官方电话

  • 所在地区:

    上海

  • 业务范围:

    技术服务、耗材、实验室仪器 / 设备

  • 经营模式:

    代理商 生产厂商

在线沟通

公司新闻/正文

小小代码造就精美绘图——“瀑布图”

382 人阅读发布时间:2022-08-04 11:47

瀑布图是一种用于展示拥有相同的X轴变量数据、不同的Y轴离散型变量和Z轴数值变量的专业绘图,它可以清晰地展示不同样本对同一差异蛋白的变化关系。
新闻图片1
备注:X轴变量数据(如不同的指标)、不同的Y轴离散型变量(不同样本相对含量)
 
需要用到的R包
一、ggplot2 绘图用R包 二、RColorBrewer 包含大量专业绘图色,绘制多样本图的基础 三、reshape2 用于整理数据的R包

绘图步骤
一、
载入R包
library(ggplot2)
library(RColorBrewer)
library(reshape2)
二、导入数据
新闻图片2

文件命名为Waterfall_Data.csv
data<-read.csv("Waterfall_data.csv",stringsAsFactors=FALSE)
三、整理数据
​​​​​​​colnames(data)<-c("X_Axis",seq(60,25,-5))plotdata<-melt(data,id.vars = "X_Axis")
四、
绘制瀑布图
ggplot(plotdata,aes(X_Axis,value,fill=variable))+
  geom_area(color="black",size=0.25)+  facet_grid(variable~.)+  theme(    text=element_text(size=15,face="plain",color="black"),    axis.title=element_text(size=10,face="plain",color="black"),    axis.text = element_text(size=10,face="plain",color="black"),    legend.position="none"  )
新闻图片3
进阶画法(3D瀑布图)
相对于行分面瀑布图,3D瀑布图中不同类别间的差异更为直观,能更好地观察类与类之间的差距。
载入R包 
library(plot3D)library(RColorBrewer)
导入数据

data<-read.csv("Facting_Data.csv",check.names =FALSE)
数据处理
N<-ncol(data)-1plotdata<-data.frame(x=numeric(),y=numeric(),variable=character())for (i in 1:N){tempdata<-data.frame(spline(data[,1],data[,i+1],n=300,method= "natural"))tempdata$variable<-colnames(data)[i+1]plotdata<-rbind(plotdata,tempdata)}#插值处理plotdata$variable<-as.numeric(plotdata$variable)group<-unique(plotdata$variable)M<-length(group)

调整颜色
gg_color_hue <- function(n) {
  hues = seq(15, 375, length = n + 1)  hcl(h = hues, l = 65, c = 100)[1:n]}colormap <- rev(gg_color_hue(M))#brewer.pal(M,'RdYlGn')

绘制3D瀑布图

pmar <- par(mar = c(5.1, 4.1, 4.1, 6.1))
perspbox(z=as.vector(0),#add=TRUE,          xlim=c(20,70),ylim=c(360,750),zlim=c(0,15),          ticktype = "detailed",bty = "f",box = TRUE,colkey = FALSE,          theta = -110, phi = 20, d=3)for (i in 1:M){  df0<-plotdata[plotdata$variable==group[i],]  Ndf<-nrow(df0)  df<-rbind(df0,c(df0$x[1],df0$y[Ndf],df0$variable[Ndf]))  with(df,polygon3D(x=variable,y=x, z=y, alpha=0.6,      col=colormap[i],lwd = 3,add=TRUE,colkey = FALSE))  with(df0,lines3D(x=variable,y=x, z=y,      lwd = 0.5,col="black",add=TRUE))}colkey (col=colormap,clim=range(plotdata$y),clab = "Z Value", add=TRUE, length=0.5,side = 4)#设置图例
新闻图片4
备注:X轴变量数据(不同样本)、不同的Y轴离散型变量(不同指标)、Z轴数值变量(指标相对含量)

上一篇

百趣代谢组学实验室分享之萌新篇—细胞培养避坑指南

下一篇

百趣代谢组学资讯:复旦团队为三阴性乳腺癌治疗策略再添新翼

更多资讯

我的询价