初识ggplot2
在最先提到的也是最重要的,可以通过输入以下代码得到 ggplot2 的一些参数信息。
vignette('ggplot2-specs')
基础要点
ggplot2图像的三个基本构成:
- 数据
- 图像属性映射,设定变量如何映射到图层的图像属性上
- 几何对象,即画什么图
此处我们使用 ggplot2 内置的 mpg 数据集,首先是 ggplot2 的最基本语法,即,构造一个坐标轴。
library(ggplot2)
ggplot(mpg,aes(displ,hwy))+geom_point()
其中,aes
参数内设置的分别是x,y 的数据。此处displ 的数据集(即x轴)刚好在 1.6 到 7.0 之间,所以 ggplot2 绘制出来的横坐标在 1.4 到 7.1 之间,纵坐标同理。而后面的 geom_point()
则是把点绘制出来,结果显示为散点图。
> summary(mpg$displ)
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.600 2.400 3.300 3.472 4.600 7.000
颜色大小形状等图形属性设置
图形属性的设置方法和设置轴相同,而且同样需要写入 aes()
函数当中。
如运用 mpg 数据库内用 class 来进行点的区分,或是使用iris数据库内的Species来进行区分。
#对ggplot2内置的mpg包
ggplot(mpg,aes(displ,hwy,colour=class))+geom_point()
ggplot(mpg,aes(displ,hwy))+geom_point(aes(colour=class))
#对iris数据集
ggplot(iris,aes(Sepal.Length,Sepal.Width,colour=Species))+geom_point()
可以得到如下(两句代码所得结果相同):
同样的,colour 可以替换为 shape ,size 等参数。具体的参数信息请输入vignette('ggplot2-specs')
进行查看。
但同时,如果你想把点的颜色固定的话,则需要将属性参数放在 aes()
外侧。
分面
分面同样可以在图像中显示分类变量,而分面一般分为网格型和封装型。此处为封装型,只需要假如代码 facet_wrap()
,括号中加入 ~ 和分类变量。
#针对mpg数据集进行关于class的分面处理
ggplot(mpg,aes(displ,hwy))+geom_point(colour='blue')+facet_wrap(~class)
#针对iris数据库进行关于Species的分面处理
ggplot(iris,aes(Sepal.Length,Sepal.Width))+geom_point()+facet_wrap(~Species)
即可得到下图: