r4ds学习笔记之ggplot2

前提
ggplot2简介
美学映射Aesthetic Mappings
SessionInfo

为了进一步加强以及整合自己data science的能力,最近打算在我的博客开辟一个新类r4ds,专门用来记录学习Hadley Wickham大神的新作R for Data Science的读书笔记。该书推荐我们入门data science可以从可视化开始,这也是该书目录布局的第一章。因此开始学习R语言可视化。
前提


本章主要聚焦于可视化包ggplot2,为了写这本书,大神专门整合了一系列神包成为一个包tidyverse,因此第一步就是要先安装该包并加载。

#install tidyverse
install.packages("tidyverse")
#load tidyverse
library(tidyverse)

ggplot2简介

利用数据集mpg来探究发动机大小跟好友耗油是否存在某种关系,先check一下该数据集。

head(mpg)

在各个变量中:

  • disp:车发动机大小
  • hwy:衡量耗油率的一个指标,更多信息可?mpg查看

要探究displ与hwy的关系,最快就是画个图了

ggplot(data=mpg)+ geom_point(mapping = aes(x=displ, y=hwy))


图中显示两者呈现负相关,disp越大,hwy越低。
ggplot2绘图规则主要如下:

ggplot(data=<DATA>)+
     <GEOM_FUNCTION>(mapping=aes(>MAPPINGS>))

ggplot()会创建一个底板,然后可以通过geom_function()不断地添加图形元素,进行丰富。

p <- ggplot(mpg)#create an empty graph
p+geom_point(aes(x=displ, y=hwy))#add a layer to the empty graph

美学映射Aesthetic Mappings

美学映射在ggplot2中是一个十分重要的概念,比如前文我们将displ、hwy分别映射给x、y轴,同时还可以用来控制图形元素大小、形状、颜色等属性。

ggplot(mpg)+ 
geom_point(aes(x=displ, y=hwy, color=class))#将class映射给颜色属性,这样不同class就表现不同颜色


可以看到,通过颜色映射ggplot2会自动创建一个legend,需要注意的是这里颜色颜色我们是利用class,这是一个离散性变量,如果我们将之映射给点的size,则会出现warning,至于原因,看warning。

ggplot(mpg)+ geom_point(aes(x=displ, y=hwy, size=class))

或者将class映射给alpha参数,这是一个控制点透明度的参数;shape是一个控制形状的参数

ggplot(mpg)+ geom_point(aes(x=displ, y=hwy, alpha=class))
ggplot(mpg)+ geom_point(aes(x=displ, y=hwy, shape=class))


发现当映射shape其中SUV是没有形状的,这是因为ggplot2只默认6种形状,这个问题后续解决。 需要注意的是映射参数必须在aes(),不然就无法映射。

ggplot(mpg)+ geom_point(aes(x=displ, y=hwy), color="blue")#all the points are blue

今天就讲到这,下次继续
SessionInfo


sessionInfo()
## R version 3.4.1 (2017-06-30)
## Platform: x86_64-w64-mingw32/x64 (64-bit)
## Running under: Windows 8.1 x64 (build 9600)
## 
## Matrix products: default
## 
## locale:
## [1] LC_COLLATE=Chinese (Simplified)_China.936 
## [2] LC_CTYPE=Chinese (Simplified)_China.936 
## [3] LC_MONETARY=Chinese (Simplified)_China.936
## [4] LC_NUMERIC=C ## [5] LC_TIME=Chinese (Simplified)_China.936 
## 
## attached base packages:
## [1] stats graphics grDevices utils datasets methods base 
## 
## other attached packages:
## [1] forcats_0.2.0 stringr_1.2.0 dplyr_0.7.1 
## [4] purrr_0.2.2.2 readr_1.1.1 tidyr_0.6.3 
## [7] tibble_1.3.3 ggplot2_2.2.1 tidyverse_1.1.1.9000
## 
## loaded via a namespace (and not attached):
## [1] Rcpp_0.12.11 cellranger_1.1.0 compiler_3.4.1 
## [4] plyr_1.8.4 bindr_0.1 tools_3.4.1 
## [7] digest_0.6.12 lubridate_1.6.0 jsonlite_1.5 
## [10] evaluate_0.10.1 nlme_3.1-131 gtable_0.2.0 
## [13] lattice_0.20-35 pkgconfig_2.0.1 rlang_0.1.1 
## [16] psych_1.7.5 rstudioapi_0.6 yaml_2.1.14 
## [19] parallel_3.4.1 haven_1.0.0 bindrcpp_0.2 
## [22] xml2_1.1.1 httr_1.2.1 knitr_1.16 
## [25] hms_0.3 rprojroot_1.2 grid_3.4.1 
## [28] glue_1.1.1 R6_2.2.2 readxl_1.0.0 
## [31] foreign_0.8-69 rmarkdown_1.6 modelr_0.1.0 
## [34] reshape2_1.4.2 magrittr_1.5 clisymbols_1.2.0 
## [37] boxes_0.0.0.9000 backports_1.1.0 scales_0.4.1 
## [40] htmltools_0.3.6 rvest_0.3.2 assertthat_0.2.0 
## [43] mnormt_1.5-5 colorspace_1.3-2 labeling_0.3 
## [46] stringi_1.1.5 lazyeval_0.2.0 munsell_0.4.3 
## [49] broom_0.4.2 crayon_1.3.2.9000
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,271评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,275评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,151评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,550评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,553评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,559评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,924评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,580评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,826评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,578评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,661评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,363评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,940评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,926评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,872评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,391评论 2 342

推荐阅读更多精彩内容