R语言绘图(ggplot2、ggpubr)从入门到精通02--柱
2021-05-21 本文已影响0人
生信师兄
本系列课程要求大家有一定的R语言基础,对于完全零基础的同学,建议去听一下师兄的《生信必备技巧之——R语言基础教程》。本课程将从最基本的绘图开始讲解,深入浅出的带大家理解和运用强大而灵活的ggplot2包。内容包括如何利用ggplot2绘制散点图、线图、柱状图、添加注解、修改坐标轴和图例等。
本次课程所用的配套书籍是:《R Graphic Cookbooks》
除了以上的基本图形外,师兄还会给大家讲解箱线图、提琴图、热图、火山图、气泡图、桑基图、PCA图等各种常用的生信图形的绘制,还不赶紧加入收藏夹,跟着师兄慢慢学起来吧!
第一章:快速探索数据
-
柱状图:
-
基础的可以用barplot来画:
条形01.pngbarplot(BOD$demand,names.arg = BOD$Time) # 有时“条形图”指的是一个图表,其中的条形图代表了每个类别的案例数。 # 这类似于直方图,但是x轴是离散的,而不是连续的。这个时候就要用table函数生成每个类别的计数; barplot(table(mtcars$cyl))
条形02.png -
使用qplot
# 使用qplot() qplot(mtcars$cyl) qplot(factor(mtcars$cyl))
-
-
大家能否想想ggplot该怎么画同样的图呢?
# stat="bin"(默认):柱高为各个分类数目;stat="identity"柱高分类所占比例。 ggplot(BOD,aes(factor(Time),demand)) + geom_bar(stat = "identity") ggplot(mtcars,aes(factor(cyl))) + geom_bar()
-
直方图:
直方图是数值数据分布的精确图形表示。 这是一个连续变量的概率分布的估计,并且被卡尔·皮尔逊(Karl Pearson)首先引入。
它是一种条形图。 为了构建直方图,第一步是将值的范围分段,即将整个值的范围分成一系列间隔,然后计算每个间隔中有多少值。 这些值通常被指定为连续的,不重叠的变量间隔。 间隔必须相邻,并且通常是(但不是必须的)相等的大小。
- 基础方法:hist函数:
hist(mtcars$mpg) hist(mtcars$mpg,breaks = 10) # breaks参数指定组数;
- 使用qplot
#qplot()
qplot(mpg,data = mtcars, binwidth = 4) # binwidth参数指定组距;
直方图02.png
- 使用ggplot2
#等价于
ggplot(data = mtcars,aes(x = mpg)) + geom_histogram(binwidth = 2)
直方图03.png
往期链接
创作不易:各位的点赞和转发是小编继续坚持的动力哦!咱们下期再见