前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言基础绘图教程——第6章:箱形图和韦恩图

R语言基础绘图教程——第6章:箱形图和韦恩图

作者头像
DoubleHelix
发布2019-08-15 17:23:41
1.7K0
发布2019-08-15 17:23:41
举报
文章被收录于专栏:生物信息云
R基础教程可先阅读:R语言编

boxplot绘制箱形图

部分数据:

Value Group

2 a

4 a

3 a

2 a

4 a

7 a

7 a

2 a

5 a

4 a

5 b

6 b

8 b

5 b

代码语言:javascript
复制
dat <- read.table("boxplot.txt",header=T)
boxplot(Value~Group,data = dat)
代码语言:javascript
复制
#调整
boxplot(Value~Group,data = dat,
        varwidth=TRUE,
        col="#6DC9F2",
        outline=FALSE,
        names=c("Control","Drug1","Drug2","Drug3","Drug4","Drug5"),
        horizontal=FALSE )
代码语言:javascript
复制
#高级调整
points(jitter(as.numeric(dat$Group)),dat$Value, pch = 16, col = "red")

ggplot绘制箱形图

绘图格式:

代码语言:javascript
复制
ggplot(dat, aes(Group,Value))+ geom_boxplot()

这里就不展示了,试试自己绘制一下。

韦恩图

数据

代码语言:javascript
复制
####first generate the test data
#a function to generate gene names
generateGeneName <- function()
{
  paste(sample(LETTERS,5,replace=T), collapse='')
}

#generate 100 gene names
geneNames <- replicate(1000, generateGeneName())


####method 1
####
library(gplots)
#venn plot of two groups 
GroupA <- sample(geneNames,400, replace=F)
GroupB <- sample(geneNames,400, replace=F)
input <- list(GroupA,GroupB)
venn(input)
代码语言:javascript
复制
#venn plot of three groups 
GroupA <- sample(geneNames,400, replace=F)
GroupB <- sample(geneNames,400, replace=F)
GroupC <- sample(geneNames,500, replace=F)
input <- list(GroupA,GroupB,GroupC)
venn(input)
代码语言:javascript
复制
#venn plot of four groups 
GroupA <- sample(geneNames,400, replace=F)
GroupB <- sample(geneNames,300, replace=F)
GroupC <- sample(geneNames,500, replace=F)
GroupD <- sample(geneNames,700, replace=F)
input <- list(GroupA,GroupB,GroupC,GroupD)
venn(input)
代码语言:javascript
复制
#venn plot of five groups 
GroupA <- sample(geneNames,400, replace=F)
GroupB <- sample(geneNames,300, replace=F)
GroupC <- sample(geneNames,500, replace=F)
GroupD <- sample(geneNames,700, replace=F)
GroupE <- sample(geneNames,600, replace=F)
input <- list(GroupA,GroupB,GroupC,GroupD,GroupE)
venn(input)
代码语言:javascript
复制
####method2
####using package "venneuler", with weights. using the size of the area to indicate different sets and the intersection
library(venneuler)
m <- data.frame(c(GroupA, GroupB, GroupC), 
               c(rep("GroupA", length(GroupA)),
                 rep("GroupB", length(GroupB)),
                 rep("GroupC", length(GroupC))
                )
              )
v <- venneuler(m)
plot(v)
代码语言:javascript
复制
####method3
####
library(VennDiagram)
#three groups
venn.diagram(list(GroupA=sample(geneNames,400, replace=F),
                  GroupB=sample(geneNames,300, replace=F),
                  GroupC=sample(geneNames,500, replace=F) ),
             height=3000,
             width=3000,
             resolution=500,
             imagetype="tiff",
             filename="venn.diagram.3groups.tiff",
             fill = c("cornflowerblue", "green", "yellow"),
             label.col="black",
             cat.col = c("darkblue", "darkgreen", "orange")
)
#four groups
venn.diagram(list(GroupA=sample(geneNames,400, replace=F),
                  GroupB=sample(geneNames,300, replace=F),
                  GroupC=sample(geneNames,500, replace=F),
                  GroupD=sample(geneNames,700, replace=F) ),
             height=3000,
             width=3000,
             resolution=500,
             imagetype="tiff",
             filename="venn.diagram.4groups.tiff",
             col="transparent",
             fill = c("cornflowerblue", "green", "yellow", "darkorchid1"),alpha = 0.50,
             label.col = c("orange", "white", "darkorchid4", "white", "white", "white", "white", "white", "darkblue", "white", "white", "white", "white", "darkgreen", "white"),
             cat.col = c("darkblue", "darkgreen", "orange", "darkorchid4")
)
#five groups
venn.diagram(list(GroupA=sample(geneNames,400, replace=F),
                  GroupB=sample(geneNames,300, replace=F),
                  GroupC=sample(geneNames,500, replace=F),
                  GroupD=sample(geneNames,700, replace=F),
                  GroupE=sample(geneNames,800, replace=F)),
             height=3000,
             width=3000,
             resolution=500,
             imagetype="tiff",
             filename="venn.diagram.5groups.tiff",
             col = "black",
             fill = c("dodgerblue", "goldenrod1", "darkorange1", "seagreen3", "orchid3"),
             alpha = 0.50,
             cex = c(1.5, 1.5, 1.5, 1.5, 1.5, 1, 0.8, 1, 0.8, 1, 0.8, 1, 0.8,
                     1, 0.8, 1, 0.55, 1, 0.55, 1, 0.55, 1, 0.55, 1, 0.55, 1, 1, 1, 1, 1, 1.5),
             cat.col = c("dodgerblue", "goldenrod1", "darkorange1", "seagreen3", "orchid3"),
             cat.cex = 1.5,
             cat.fontface = "bold",
             margin = 0.1
)
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-08-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 MedBioInfoCloud 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • boxplot绘制箱形图
  • ggplot绘制箱形图
  • 韦恩图
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档