搜索
查看: 754|回复: 0

[R] 跟着高手一起啃R语言(4)

[复制链接]

6

主题

11

帖子

105

积分

注册会员

Rank: 2

积分
105
发表于 2018-9-9 19:20:39 | 显示全部楼层 |阅读模式
本帖最后由 xray19 于 2018-9-9 19:59 编辑

练习:分面与几何对象(1)分面:添加额外变量除了使用图形属性,还可以根据变量将图分割成多个小图,即分面,可以显示数据子集的子图。适用于分类变量。
(2)几何对象:是图中用来表示数据的几何图形对象,如geom_point(), geom_smooth()等。
1,先建一个全局映射的点图,按照drv变量进行颜色分类;
[AppleScript] 纯文本查看 复制代码
p<-ggplot(data=mpg,aes(x=displ,y=hwy,colour= drv))
p<-p+geom_point()
p


p15a.png

2,在图上添加一个平滑曲线,同样按照drv变量进行线型的分类;
[AppleScript] 纯文本查看 复制代码
p<-p+geom_smooth(se=FALSE,aes(linetype=drv))
p

P15b.png
从图中可以看出,平滑曲线不仅是按照线型进行了三个分类,同时也按照三个不同的颜色进行了分类。那么,如果仅仅想让平滑曲线按照线型进行分类,该如何操作呢?

3,平滑曲线仅按线性分类,而不按照颜色分类;
[AppleScript] 纯文本查看 复制代码
p<-ggplot(data=mpg,aes(x=displ,y=hwy))
p<-p+geom_point(aes(colour= drv))
p
p<-p+geom_smooth(se=FALSE,aes(linetype=drv))
p

p15c.png p15d.png
可以看到,如果把color由全局映射改为geom_piont()的局部映射,则平滑曲线的颜色就由原来的三色变为蓝色了。
再修改一下曲线的颜色为红色看看:
[AppleScript] 纯文本查看 复制代码
p<-p+geom_smooth(se=FALSE,color="red",aes(linetype=drv))
p

p15e.png
4, 按照drv~class加个分面看看;
[AppleScript] 纯文本查看 复制代码
p<-p+facet_grid(drv~class)
p

P15f.png
[AppleScript] 纯文本查看 复制代码
p<-p+facet_grid(class~drv)
p

p15g.png
从分面的两张图可以看出来,在使用facet_grid()时,一般将具有更多唯一值得变量放在列上,不是没有理由的。
同时也可以看出,每个分面中,都同时叠加了平滑曲线,并且是按照drv进行的分类。那么,如果我们不进行平滑曲线线型的分类或变量映射,在分面情况下平滑曲线该是如何表现的呢?
5,平滑曲线不分类和映射的情况下分面;
[AppleScript] 纯文本查看 复制代码
p<-ggplot(data=mpg,aes(x=displ,y=hwy))+
   geom_point(aes(colour= drv))+
   geom_smooth(se=FALSE,colour="red")+
   facet_grid(class~drv)
p

P15h.png






上一篇:org.Hs.eg.db包简介
下一篇:&lt;R for Data Science&gt; 读书笔记1 | 前期准备工作
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|生信技能树 ( 粤ICP备15016384号  

GMT+8, 2019-11-21 10:02 , Processed in 0.032957 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.