R语言教程

R语言作图——Facet violin plot

2019-11-17  本文已影响0人  生信了

原创:黄小仙

老铁们,许久未见啦。顺便说一下,最近可不是小仙同学偷懒哟,电脑上个月送修今天刚刚拿回来(想买联想Yoga的同学先问问自己会不会拆电脑换排线,我买的这台用了一个月,送修也用了一个月 )。
最近我可攒了个大招呢,先来看看下面这张图,有没有很眼熟呢?


image

这张图在开始介绍R语言的时候就出现过啦,不过小仙同学当时并不知道怎么画。今天可以秀一把啦。

Step1. 绘图数据的准备
老样子,准备好要作图的csv文件。
数据的格式如下图:列表示一种变量(特征),第一行是列名
a1~a9表示9种基因,TypeA~TypeC表示三种不同的细胞

image

Step2. 绘图数据的读取

data<-read.csv(“your file path”, header = T)  
#注释:header=T表示数据中的第一行是列名,如果没有列名就用header=F

Step3.绘图所需package的安装、调用

#注释:大家要注意今天要用的package安装比较特别哟
install.packages("devtools")       
library(devtools) 
install_github("kassambara/easyGgplot2")
library(easyGgplot2)

#注释:今天还要用到一个新的函数,reshape2里的melt函数,可以把宽数据变成长数据 
install.package("reshape2")  
library(reshape2)
df<-melt(data,id.vars = c("type"))

Step4. 绘图<font>

ggplot2.violinplot(data=df,xName='variable',yName='value',         #注释:xName表示x轴变量,yName表示y轴变量
                   groupName='variable', legendPosition="top",
                   faceting=TRUE,facetingVarNames="type")
image

<font color="red">Step5.美化</font>

ggplot2.violinplot(data=df,xName='variable',yName='value',
                   groupName='variable', legendPosition="top",
                   backgroundColor="white",
                   removePanelGrid=TRUE,
                   axisLine=c(0.5, "solid", "black"),
                   faceting=TRUE, facetingVarNames="type")
image
image

Ps:如果想去掉边框可以加上这一句removePanelBorder=TRUE

到这里已经可以完成facet violin plot了,那么问题来了,怎么才能让图片变成下图这个样子呢?小仙同学用了个很笨的方法,下次分享揭晓答案哟!


image

导出高清图的方法在这里:
R语言作图技巧——导出高清图
R语言作图系列还有:
R语言作图——Histogram
R语言作图——Violin plot
R语言作图——Facet violin plot
R语言作图——Line plot
R语言作图——Density plot
R语言作图——Bubble matrix
R语言作图——Radar chart

(公众号:生信了)


image
上一篇下一篇

猜你喜欢

热点阅读