ggplot2 背后有一套图形语法支持。
语法基于《Grammar of Graphics》(wilkinson,2005)一书,它由一系列独立的图形部件组成,并能以许多不同的方式组合起来。
这一点使得ggplot2功能非常强大,因为它不会局限与一些已经定义好的统计图形,而是可以根据你的需要量身定做。
什么是图形的语法?
简而言之,一张统计图形是从数据到“几何对象”(geometric object,缩写为geom,包括点、线、条形等)的“图形属性”(aesthetic attributes,缩写为aes,包括颜色、形状、大小等)的一个映射。
此外,图形中还可能包含数据的“统计变换”(statistical transformation,缩写为stats),最后绘制在某个特定的“坐标系”(coordinate system,缩写为coord)中,而“分面”(facet,指将绘图窗口划分为若干个子窗口)则可以用来生成数据不同子集的图形。
术语
最基础的部分是,你想要可视化的数据(data)以及一系列将数据中的变量对应到图形属性的映射(mapping)
几何对象(geom)代表你在图形中实际看到的图形元素,如点、线、多边形等;
统计变换(stats)是对数据进行的某种汇总。如,将数据分组计数以创建直方图;
标度(scale) 的作用是将数据的取值映射到图形空间,如,用颜色、大小或形状来表示不同的取值;
坐标系(coord) 描述了数据是如何映射到图形所在的平面的;
分面(facet) 描述了如何将数据分解为各个子集,以及如何对子集作图并联合进行展示。
语法的一些局限
没有指出你应该采取哪种图形来进行展示
没有规定一张图形的外观应该是怎样的
没有描述交互式的操作
安装
install.packages("ggplot2")
library(ggplot2)
其他资源
http://had.co.nz/ggplot2/
https://cran.r-project.org/web/packages/ggplot2/