1.ggpubr绘图
ggpubr 搜代码直接用,基本不需要系统学习。
STHDA网站上有大量ggpubr出的图。
应急来用,用简单的代码来画出比较漂亮的图。
如果想调参数等细节,终归回到ggplot2。
- ggpubr与ggplot2画图的异同:
ggplot2画图永远是以ggplot开头,换行后加画图函数;而ggpubr开头是画图函数。看作业对比两者画图的区别。
library(ggpubr)
ggscatter(iris,x="Sepal.Length",
y="Petal.Length",
color="Species")
##theme_bw() 换背景的函数
##theme_classic(), ggplot2默认的主题
##ggscatter为画点图函数
- ggpubr的代码里的实际参数有引号,而ggplot2的代码里没有引号。
- ggplot和ggpubr画的图是可以赋值的:
library(ggpubr)
p <- ggboxplot(iris, x = "Species",
y = "Sepal.Length",
color = "Species",
shape = "Species",
add = "jitter")
p
## add = "jitter"增加图层,把映射的概念去掉,就变成异常简单。
##组间比较
my_comparisons <- list( c("setosa", "versicolor"),
c("setosa", "virginica"),
c("versicolor", "virginica") )
p + stat_compare_means(comparisons = my_comparisons)+ # Add pairwise comparisons p-value
stat_compare_means(label.y = 9)
##my_comparisons是一个变量,内容为一个列表list(),列表里有3个元素,每个元素是一个长度为2的向量。把哪一个组与哪一个组进行比较,就写成列表里面的其中一个元素,画图之后就做完比较。
##stat_compare_means(label.y = 9) 是总体比较P值的纵坐标,纵坐标是9,默认的太靠上或是太靠下,可能会出现一大片括号或是重叠,偶尔可以调一下label.y = 9)的数值。
##stat_compare_means函数是添加组间比较的东西。
##要求:首先是列表,其次列表里的每个元素都是长度为2的向量,查看帮助文档去理解。引号里的东西必须是横坐标。
ggpubr出自于ggplot2,ggpubr青出于蓝而胜于蓝:ggpubr比ggplot2多了一个组间比较,给两组之间比较,画上P值,标注显著性,总体比较的P值,用stat_compare_means函数实现组间比较的东西。
画图时不是一句句代码画,而是直接到网上搜索。
2.ggpubr绘图保存
用函数ggsave函数:后缀可以是pdf,png等。
eoffice包里的topptx函数:可以将图片保存为ppt格式
library(ggpubr)
p <- ggboxplot(iris, x = "Species",
y = "Sepal.Length",
color = "Species",
shape = "Species",
add = "jitter")
ggsave(p,filename = "iris_box_ggpubr.png")
ggsave(p,filename = "iris_box_ggpubr.pdf")
##图片可以保存png或是pdf格式,pdf格式的内存比较小
library(eoffice)
p <- ggboxplot(iris, x = "Species",
y = "Sepal.Length",
color = "Species",
shape = "Species",
add = "jitter")
topptx(p,"iris_box_ggpubr.pptx")
3.去找更丰富的图的网站STHDA
这个网站上有很多R语言画出来的图,包括基础包的,ggplot2画的,有大量ggpubr出的图,还有3D的图片以及Lattice Graphics古老的图片(一般不学,因为学了也没用)。该网站还包括R语言基础,数据处理,还有一些分析。
图的代码有很多,哪些图适合用来展示你的数据,这个能够成功运行的代码,数据长什么样子和你的数据之间有什么差别。这个是最锻炼人的地方。
在搜索框里找boxplot
说明
以上内容是听生信技能树小洁老师的R语言线上课,根据自己的理解记录下来,小洁老师授课非常细心,对不同水平的同学都照顾到,并且补充很多技巧以及注意事项。