3-9ggplot2绘图系统之ggplot
library(ggplot2)
ggplot(airquality,aes(Wind,Temp)) +geom_point(color="steelblue",alpha=0.4,size=5)(一层加一层)
ggplot(airquality,aes(Wind,Temp)) +geom_point(aes(color=factor(Month)),alpha=0.4,size=5)
ggplot(airquality,aes(Wind,Temp)) +geom_point()+geom_smooth()(geom为几何客体 添加一条回归线) =ggplot(airquality,aes(Wind,Temp)) +geom_point()+stat_smooth()
ggplot(airquality,aes(Wind,Temp)) +geom_point()+geom_smooth(method="lm",se=FALSE,aes(col=factor(Month)))(给每个月份的数据拟合一条回归线)
ggplot(airquality,aes(Wind,Temp,col=factor(Month),group=1)+geom_point()+geom_smooth(method="lm",se=FALSE))(对所有数据进行拟合)
11111
theme_classic()经典主题的风格
如何把不同的月份画在不同的面板上即每个月份的数据都显示在每个子面板上
删去对全部数据进行的拟合,然后追加一层facet_grid(.~Month)每个月份显示为一列,则应该将点放在左边
可以用scale_color_manual()这个函数自行设置颜色
col=all是黑色
①ggplot(airquality,aes(Wind,Temp,col=factor(Month)))
+stat_smooth(method="lm",se=FALSE)
②ggplot(airquality,aes(Wind,Temp))
+stat_smooth(method="lm",se=FALSE,aes(col=factor(Month)))
①②表达运行的一样,图呈现出五条颜色的直线(对每个月份都进行拟合)
③ggplot(airquality,aes(Wind,Temp,col=factor(Month),group=1)
+stat_smooth(method="lm",se=FALSE)
加入group=1表示对所有的数据一起进行拟合,但是颜色的设置还是起作用的,只不过是在点上起作用
④ggplot(airquality,aes(Wind,Temp,col=factor(Month),group=1)
+geom_point()+stat_smooth(method="lm",se=FALSE)
⑤如图所示
stat_ smooth(method="lm",se=FALSE)method来指定回归分析所用到的方法,lm是线性回归,se=FALSE 置信区间设置为假,即关掉置信区间
添加统计层的两种方法
①在客体层添加
geom_smooth()
②独立添加
stat_smooth()
aes()是ggplot中的映射函数,将数据与图形属性一一对应
若要按照月份不同分类则应将月份转化为分类变量,然后将月份这个数据对应到美学的维度上用映射函数
三个最基本的层,数据层,美学层,几何客体层
蓝色的半透明大小为五的点
不要忘记先加载这个包
第一个参数相关的数据集,第二个参数是跟美学相关的层,直接调用ggplot不能画出来图,必须在其基础上加上其他层
将不同月份画在不同面板上:取消整体拟合层,添加facet_grid
加载RcolorBrewer包,可以对线颜色进行更改,Dark2是一种调色板
在group=1后输入col="All"可以添加整体数据拟合图例,名为All
group=1是基于整体数据进行拟合,颜色可作用于点
ggplot(数据集,美学相关的层)需要叠加其它层才能显示出图,每层可添加参数进行设置。alpha可设置透明度,size可设置大小。用不同颜色点显示用aes(color=factor(变量))
library(ggplot2) ggplot(airquality, aes(Wind, Temp))+ geom_point(aes(color = factor(Month), group = 1,alpha = 0.4, size = 5))+ geom_smooth(method = "lm", se = F, aes(group = 1))#前一个group只输出群体拟合,后一个控制再做一条群体拟合 ggplot(airquality, aes(Wind, Temp)) + geom_point()+ geom_smooth(method = "lm", se = F, aes(group = 1)) ggplot(airquality, aes(Wind, Temp, col = factor(Month))) + geom_point()+ geom_smooth(method = "lm", se = F, aes(group = 1))+ scale_color_manual("Month", values = myColors)+ facet_grid(.~Month)+ theme_classic()