上海锐翌生物科技有限公司

服务电话:021-51001612

邮箱:support@realbio.cn

技术课堂

高大上的绘图系统ggplot2
发布时间:2018-06-26 18:03   点击率:

ggplot2是一个基于图形语法的声明式创建图形的系统;使用ggplot2绘图的过程就像是使用动词、名词、形容词等按照语法来进行创造句子的过程。绘图的本质是将数据映射到几何客体(点/线/条等)的美学属性上(颜色/形状/大小等)。

 
ggplot2有很多层,不同的层相当于不同词性的词,按照一定的规则将这些层组合到一起就生成了最终的图。

 
 
1、首先介绍ggplot2的层(七种层,前三层为基础层):
Data(数据层):感兴趣的变量(data frame)
Aesthetics(美学层):x-axis/y-axis/color/fill/size/labels/alpha/shape/linear width/linear type
Geometries(几何客体层):point/line/histogram/bar/boxplot
Facets(面):将绘图面板划分成多少行和列
Statistics(统计):给图形中添加统计信息
Coordinates(坐标系):Cartesian/fixed/polar/limits
Themes(主题):跟数据本身无关的风格的设置
 
 
2、基础知识介绍完成,来一起感受下gqplot2绘图函数的魅力。
gqplot2绘图函数qplot()使用
qplot() 类似于Base系统中的plot,参数包含美学属性/几何客体/面......
使用之前,下载安装ggplot2包:
install.packages("ggplot2")   #下载
library(ggplot2)      #加载
 
使用空气质量数据集airquality(6个变量152个观测值的数据框):

基本用法
qplot(Wind, Temp, data = airquality)  #黑白散点图
 
美学属性(颜色/大小/形状/x-轴/y-轴/标题等)
qplot(Wind, Temp, data = airquality, color = I("red"), size = I(2)) #也可以固定颜色及大小,使用固定颜色或大小时用I()  
 
 
qplot(Wind, Temp, data = airquality, color = factor(Month), xlab = "wind(mph)", ylab = "Temperature", main = "wind vs temp")   #添加x轴、y轴和标题
美学属性不止颜色、大小、形状等,还包括其它的,使用方法类似。
 
  
几何客体(参数:geom)
qplot(Wind, Temp, data = airquality, geom = c("point","smooth"))
qplot(Wind, Temp, data = airquality, color = factor(Month), geom = c("point","smooth"))
#绘制散点图和拟合回归线
 
 
 面(参数:facets)
qplot(Wind, Temp, data = airquality, color = factor(Month), facets = Month~.)  #按月份进行行划分
qplot(Wind, Temp, data = airquality, color = factor(Month), facets = .~Month) #按月份进行列划分
 
qplot函数隐藏了绘图实现的细节,因此qplot的灵活性是欠佳的。ggplot2的核心绘图函数是ggplot,想要了解ggplot的用法,且听下回分解。

锐翌原创文章,未经授权严禁转载。