R for Data Science总结之——ggplot2
ggplot2作为R语言中经典的画图包,Grammar of Graphics理论的最佳实现,用图层的方式让数据研究人员可以最大程度地自定义化编程作图,其基本结构为:
ggplot(data = ) +
<GEOM_FUNCTION>(
mapping = aes(),
stat = ,
position =
) +
<COORDINATE_FUNCTION> +
<FACET_FUNCTION>
安装和加载:
install.packages("ggplot2")
library(ggplot2)
本文主要介绍Hadley Wickham著作R for Data Science 中的ggplot2包用法。
快速作图qplot()
qplot()函数是graphics包中的plot函数的简单包装,以图层理念的快速作图函数,简单实现为:
# Use data from data.frame
qplot(mpg, wt, data = mtcars)
qplot(mpg, wt, data = mtcars, colour = cyl)
qplot(mpg, wt, data = mtcars, size = cyl)
qplot(mpg, wt, data = mtcars, facets = vs ~ am)
# qplot will attempt to guess what geom you want depending on the input
# both x and y supplied = scatterplot
qplot(mpg, wt, data = mtcars)
# just x supplied = histogram
qplot(mpg, data = mtcars)
# just y supplied = scatterplot, with x = seq_along(y)
qplot(y = mpg, data = mtcars)
注意qplot()会根据给定自变量的数量猜测使用的geom自动作图
手动选择geom进行操作如下:
qplot(mpg, wt, data = mtcars, geom = "path")
qplot(factor(cyl), wt, data = mtcars, geom = c("boxplot", "jitter"))
qplot(mpg, data = mtcars, geom = "dotplot")
ggplot()函数
aes()
与qplot()在一个函数中控制所有的x,y轴变量,data, color, size, facet, geom不同的是,ggplot()中一般在ggplot()函数中控制data并通过aes()函数控制x,y轴变量,group, color, size的分组再根据图层思想,用 “+” 符号添加geom函数,不同的geom_point(), geom_line(), geom_boxplot()控制不同的制图,可以再Rstudio中打出geom再按"Tab"键进行选择,其后仍然用 “+” 符号添加C