烟草味道|R可视化:ggplot2初探,手把手教你绘图
其实最基本的Rbase的画图能力已经非常不错了 , R中也还有很多画图的包 , 像grid和lattice , 本篇文章首先给大家写ggplot2就是因为它的语法非常的容易记 , 非常的直观 , 而且画图理念非常适合新手 。
什么叫gg呢?就是grammar of graphics , 什么意思?就是作图的语法 , 相当于我们掌握了ggplot就掌握了作图的语法 , 就好比我们只要掌握了英语语法 , 只需要几个单词就能写出成千上万的句子 , 掌握了ggplot2我们也可以很容易的完成成千上万的图!今天就手把手教大家画一个 。
ggplot2图像的构成学习ggplot2的第一步就是了解图像的构成 , 看下面这个由ggplot2画的图:
这个图由3部分构成:
- Data: 画图用的数据 , 这个图其实是美国谋杀数据的一个总结 , 我们将其称作图的数据部分 。
- Geometry: 可以看出来 , 这个图是一个散点图 , 这个就叫做图的Geometry , 其他的Geometry还有barplot, histogram, smooth densities, qqplot, and boxplot等等 。
- Aesthetic mapping:这个图其实用了很多的信号来表达数据 , 最明显的就是x-axis and y-axis , 还有不同的颜色来表示不同的区域等等 , 这些都称为Aesthetic mapping 。
画图实操
- 第一步: 生成一个ggplot2对象
library(dslabs)data(murders)p<-ggplot(data = http://kandian.youth.cn/index/murders)p
- 第二步:给图形增加layer
光定义了geometry不行呀 , 我们得指定数据呀 , 所以我们需要在geometry中指定用哪些数据画这个散点图:
murders %>% ggplot() +geom_point(aes(x = population/10^6, y = total))
- 第三步:设置Aesthetic mappings
murders %>% ggplot() +geom_point(aes(x = population/10^6, y = total))
- 第四步:给图添加标签和文字
p + geom_point(aes(population/10^6, total)) +geom_text(aes(population/10^6, total, label = abb))#加标签
- 第五步:图像微调和放缩
p + geom_point(aes(population/10^6, total), size = 3) +geom_text(aes(population/10^6, total, label = abb), nudge_x = 1.5)
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 烹饪|泡发香菇时加一勺它,泡发的香菇味道更鲜,3分钟香菇全部泡发
- 综艺节目|严敏新综艺开播,还是那个熟悉的味道,《极限挑战》真的不该放他
- 广东省烟草局局长刘依平表示将安全工作尽在掌握中,推动安全生产管理 - 向“大安全”迈进
- 做法|味道简直太销魂!包全家人吃了还想吃!宋敏私房馆丨7种红烧肉做法
- 五花肉|味道醇厚厨师长教你:“毛氏红烧肉与梅菜扣肉”的商用做法
- 楚天都市报|男生寝室惊现大蜂巢,获1斤多蜂蜜!同学“含泪”分享:味道还可以
- 龟田志斌王子|荤素搭配,营养美味,简单又下饭,推荐几道味道鲜美的下饭菜
- 主人|【养宠经验】猫罐头总有一股腥味?猫罐头味道腥?
- 铿锵一族|《誓盟》央八首播,抗日神剧的老味道,国军连长一人端掉日军部队
- 元芳你怎么看|此情此景熟悉的味道,搞笑GIF:班主任的日常