前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >R语言循环绘制柱状图

R语言循环绘制柱状图

作者头像
用户1359560
发布2020-12-01 10:37:22
发布2020-12-01 10:37:22
1.6K00
代码可运行
举报
文章被收录于专栏:生信小驿站生信小驿站
运行总次数:0
代码可运行

循环绘制正常与肿瘤两组的柱状图

  • 第一步: 合并数据及
代码语言:javascript
代码运行次数:0
运行
复制
# ===================================================
#   
#   
#   
# ===================================================

rm(list=ls()) 

setwd('D:\\SCIwork\\F24\\OSCC\\DEG')

data <- read.csv('mRNA_exprSet.csv', header = T, row.names = 1)

data[1:4,1:4]

gene <- c('BUB1', 'BUB2', 'BUB3', 'BUB4')

dt <- data[which(rownames(data) %in% gene),]

dt <- as.data.frame(t( dt))

dt <- log2(dt +1)

# ===================================================


metadata <- data.frame(rownames(dt))


for (i in 1:length(metadata[,1])) {
  num <- as.numeric(as.character(substring(metadata[i,1],14,15)))
  if (num == 1 ) {metadata[i,2] <- "Tumor"}
  if (num != 1) {metadata[i,2] <- "Normal"}
}
names(metadata) <- c("id","group")
metadata$group <- as.factor(metadata$group)

table(metadata$group )

dt$id <- rownames(dt)

dt <- merge( metadata, dt, by='id')
  • 第二步: 循环绘图
代码语言:javascript
代码运行次数:0
运行
复制
# ===================================================


setwd('D:\\SCIwork\\F24\\OSCC\\grade\\TN')

pal <- c('#00A0D2', '#B24646')


for (i in 3:ncol(dt)) {
  
  
  gene <-  as.character(colnames(dt)[i])

  p <- ggboxplot(dt, x="group",
                 y = gene, color = "group",
                 palette = pal, add = "jitter")
  # 添加p值
  p <- p + stat_compare_means()
  ggsave(filename = paste( gene, '.pdf', sep = ''),
         width = 8, height = 8, units = "cm")}

循环不同grade的柱状图

代码语言:javascript
代码运行次数:0
运行
复制
# ===================================================
#   
#   
#   
# ===================================================


library(dplyr)

library(tidyr)

library(tidyverse)


rm(list=ls()) 

setwd('D:\\SCIwork\\F24\\OSCC\\DEG')

data <- read.csv('tumor_exp.csv', header = T, row.names = 1)

data[1:4,1:4]

gene <- c('BUB1', 'BUB2', 'BUB3', 'BUB4')
dt <- data[which(rownames(data) %in% gene),]

dt <- as.data.frame(t( dt))

dt <- log2(dt +1)

dt$Barcode <- substr(x=rownames(dt), 
                       start = 1, stop = 12)

dt$Barcode <- chartr(old='.', new = '-', x=dt$Barcode)

# ===================================================

sur  <- read.csv('survival_OSCC.csv', header = T, row.names = 1)

sur <- sur %>% 
  select( 'Barcode',  "Grade")

dt <- merge(sur, dt, by='Barcode')

dt$Grade <- as.factor(as.character(dt$Grade))


setwd('D:\\SCIwork\\F24\\OSCC\\grade\\grade')

pal <- c('#191970','#87CEFA','#FFA07A', '#B22222')


for (i in 3:ncol(dt)) {
  
  
  gene <-  as.character(colnames(dt)[i])
  
  p <- ggboxplot(dt, x="Grade",
                 y = gene, color = "Grade",
                 palette = pal, add = "jitter")
  # 添加p值
  p <- p + stat_compare_means()
  ggsave(filename = paste( gene, '.pdf', sep = ''),
         width = 8, height = 8, units = "cm")}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 循环绘制正常与肿瘤两组的柱状图
  • 循环不同grade的柱状图
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档