编辑推荐
第2版的《R绘图系统》补充了新的扩展包和实例,其扩充内容反映了统计和计算技术的新发展。Paul Murrell在这本书中为菜鸟和老手掌握复杂的R绘图技术提供了一座深不可测的宝藏。
第2版的《R绘图系统》分为四大部分,内容涵盖了传统的和更新的R独有的图形系统。全书详细描述了R语言的图形功能和R强大的grid图形系统。此外,本书还讨论了图形引擎,亦即一组常用的基本绘图功能,并涉及R绘图系统主要的应用领域和一些主要的扩展。
第2版内容更新
更新了核心图形引擎、传统绘图系统、grid绘图系统和lattice扩展包的内容;
添加了关于ggplot2的章节;
添加了讨论R绘图应用与扩展的章节,包括地理学绘图、动态图与交互图,以及点-边图(node-and-edge)。
内容简介
在这个数据海量增加的时代,数据可视化是我们对数据做出快速判断的重要工具。若能将数据巧妙地可视化,可以帮助我们对数据作出更为准确的判断。而R语言则拥有强大的数据可视化能力。
本书从简单的R语言绘图开始,全面地介绍了R语言的两大绘图系统:传统绘图系统和Grid绘图系统,以及基于Grid系统的两个主流扩展包:lattice和ggplot2。再由应用出发,讲解了基于Grid系统的绘图函数与绘图类的开发。然后深入探讨了R绘图系统底层的工作原理。此外,本书还介绍了绘制特定领域图形(如地图、动态图和3D图等)相关的R扩展包。
对于R语言入门者,或者是只想利用R作为绘图工具的用户,本书是一本非常实用的指导手册,读者可以方便地找到绘制所需统计图表的相关知识。本书关于开发图形函数和图形类以及R绘图系统底层原理的内容也会对R语言开发者和高级使用者大有裨益。
作者简介
作者介绍
Paul Murrell在奥克兰大学获得计算机科学学士、心理学学士和心理学硕士以及统计学博士学位。随后,他以医学统计学家和研究助理的身份在剑桥大学社区医疗系工作了一年。之后他在1999年10月加入奥克兰大学统计系。他的研究兴趣包括计算统计学与图形统计学。当前,他是R和统计计算项目Omegahat开发团队的成员。2010年,他获选成为美国统计协会的会员。
译者介绍
呼思乐,男,中国科学院上海生命科学研究院计算生物学研究所博士,英国帝国理工学院数据科学研究所博士后,研究方向是计算生物学、生物信息学与数据仓库技术。
张晔,男,毕业于华南统计科学研究中心,中山大学计算数学硕士,目前从事Python后端开发(搜索系统与推荐系统)。
蔡俊,男,清华大学地球系统科学研究中心博士生,生态学专业,研究兴趣是流感传播动态、传染病流行病学和环境健康。
目录
目录
第1章 R绘图简介…………………………………………………………1
1.1 R 绘图示例…………………………………………………………2
1.1.1 标准绘图…………………………………………………………3
1.1.2 框架图(Trellis plots)…………………………………………5
1.1.3 绘图语法…………………………………………………………7
1.1.4 绘制专门的图形…………………………………………………7
1.1.5 绘图背景综述……………………………………………………9
1.2 R绘图系统的结构……………………………………………………12
1.2.1 绘图函数的类型………………………………………………13
1.2.2 传统绘图系统与grid绘图系统………………………………14
第1部分 传统绘图系统……………………………………………………17
第2章 传统绘图系统的简单用法…………………………………………18
2.1 传统绘图模型………………………………………………………19
2.2 plot()函数……………………………………………………………19
2.3 单变量绘图…………………………………………………………24
2.4 双变量绘图…………………………………………………………25
2.5 多变量绘图…………………………………………………………28
2.6 绘图函数的参数……………………………………………………30
2.6.1 绘图函数的标准参数…………………………………………31
2.7 专业绘图……………………………………………………………33
2.8 交互式绘图…………………………………………………………35
第3章 定制传统绘图………………………………………………………36
3.1 绘图函数模型详解…………………………………………………37
3.1.1 绘图区域………………………………………………………37
3.1.2 传统绘图中的绘图状态………………………………………40
3.2 控制绘图行为………………………………………………………44
3.2.1 颜色……………………………………………………………45
3.2.2 线条……………………………………………………………47
3.2.3 文本……………………………………………………………47
3.2.4 数据符号………………………………………………………50
3.2.5 坐标轴…………………………………………………………52
3.2.6 绘图区域………………………………………………………54
3.2.7 剪切……………………………………………………………56
3.2.8 跳转到新的绘图………………………………………………56
3.3 多绘图布局…………………………………………………………56
3.3.1 使用传统绘图状态设置………………………………………57
3.3.2 使用布局函数layout()…………………………………………57
3.3.3 使用split-screen方法…………………………………………61
3.4 添加图形……………………………………………………………62
3.4.1 在绘图区域添加图形…………………………………………62
3.4.2 在边缘处添加图形……………………………………………70
3.4.3 图例……………………………………………………………72
3.4.4 坐标轴…………………………………………………………74
3.4.5 坐标系统………………………………………………………76
3.4.6 特殊情形………………………………………………………83
3.5 创建新的绘图………………………………………………………88
3.5.1 从头开始创建一个简单的图形………………………………89
3.5.2 从头开始创建一个更复杂的图形……………………………90
3.5.3 创建传统绘图函数……………………………………………92
第2部分 GRID绘图系统…………………………………………………97
第4章 网格图:lattice包…………………………………………………98
4.1 lattice图形模型………………………………………………………99
4.1.1 为什么要有另外一个绘图系统?……………………………101
4.2 lattice绘图类型……………………………………………………101
4.3 formula参数与条件多框图………………………………………103
4.4 group参数和图例…………………………………………………105
4.5 layout参数和排列绘图……………………………………………106
4.6 scales参数以及为坐标轴添加标签……………………………108
4.7 panel参数和图注释………………………………………………109
4.7.1 向lattice图添加输出…………………………………………112
4.8 par.settings和图形参数…………………………………………113
4.9 扩展lattice图………………………………………………………115
4.9.1 latticeExtra包…………………………………………………116
第5章 图形语法:ggplot2包…………………………………………118
5.1 快速绘图…………………………………………………………119
5.2 ggplot2图形模型…………………………………………………120
5.2.1 为什么需要另一个图形系统…………………………………121
5.2.2 一个实例数据集………………………………………………122
5.3 数据………………………………………………………………122
5.4 几何对象和图形属性……………………………………………123
5.5 标度………………………………………………………………125
5.6 统计变换…………………………………………………………128
5.7 图形属性group……………………………………………………131
5.8 位置调整…………………………………………………………132
5.9 坐标变换…………………………………………………………133
5.10 分面………………………………………………………………136
5.11 主题………………………………………………………………137
5.12 注释………………………………………………………………139
5.13 ggplot2扩展……………………………………………………140
第6章 网格绘图模型……………………………………………………142
6.1 grid绘图简述………………………………………………………143
6.1.1 一个简单的例子………………………………………………143
6.2 图形基础…………………………………………………………146
6.2.1 标准参数………………………………………………………151
6.2.2 剪切……………………………………………………………152
6.3 坐标系……………………………………………………………152
6.3.1 转换函数………………………………………………………155
6.3.2 复杂单位………………………………………………………155
6.4 控制输出的外观…………………………………………………158
6.4.1 确定图形参数配置……………………………………………160
6.4.2 向量化图形参数设置…………………………………………161
6.5 视图………………………………………………………………163
6.5.1 调入、调出和视图之间的定位………………………………164
6.5.2 剪贴到视图……………………………………………………169
6.5.3 视图列表、栈和树……………………………………………170
6.5.4 作为其他绘图基元参数的视图………………………………173
6.5.5 视图中的图形参数配置………………………………………174
6.5.6 图层……………………………………………………………175
6.6 缺失值和非有限值………………………………………………179
6.7 交互图形…………………………………………………………181
6.8 定制lattice图………………………………………………………181
6.8.1 将grid输出添加到lattice输出中………………………………181
6.8.2 将lattice输出添加到grid输出…………………………………182
6.9 定制ggplot2输出…………………………………………………183
6.9.1 将grid输出添加到ggplot2输出中……………………………184
6.9.2 将ggplot2输出添加到grid输出中……………………………185
第7章 grid图形对象模型………………………………………………187
7.1 使用图形输出……………………………………………………187
7.1.1 标准函数与参数………………………………………………189
7.2 图形对象列表、树和路径………………………………………191
7.2.1 gTree中的图形参数设置………………………………………193
7.2.2 作为gTree组件的视图…………………………………………194
7.2.3 搜索图形对象…………………………………………………194
7.3 离屏使用图形图像………………………………………………195
7.3.1 捕捉输出………………………………………………………197
7.4 在框架中放置和打包图形对象…………………………………198
7.4.1 离屏放置与打包………………………………………………201
7.5 关于图形对象的其他细节………………………………………201
7.5.1 计算图形对象的尺寸…………………………………………201
7.5.2 计算图形对象位置……………………………………………204
7.5.3 编辑图形上下文………………………………………………207
7.6 grid图形的保存与载入……………………………………………207
7.7 使用lattice图形对象………………………………………………208
7.8 使用ggplot2图形对象……………………………………………210
第8章 开发新的图形函数与对象………………………………………212
8.1 例子………………………………………………………………212
8.1.1 模块化…………………………………………………………213
8.2 简单图形函数……………………………………………………214
8.2.1 嵌入图形输出…………………………………………………215
8.2.2 便于注释………………………………………………………217
8.2.3 编辑输出………………………………………………………219
8.2.4 绝对尺寸和相对尺寸…………………………………………220
8.3 图形对象…………………………………………………………220
8.3.1 关于创建新图形类的概览……………………………………221
8.3.2 定义新图形类…………………………………………………221
8.3.3 验证图形对象…………………………………………………223
8.3.4 画出图形对象…………………………………………………224
8.3.5 编辑图形对象…………………………………………………228
8.3.6 查询图形对象…………………………………………………232
8.3.7 绘图前与绘图后………………………………………………234
8.3.8 图形对象方法汇总……………………………………………235
8.3.9 完成整个例子…………………………………………………235
8.3.10 图形元素重用………………………………………………237
8.3.11 其他细节……………………………………………………238
8.4 调试gird……………………………………………………………245
第3部分 绘图引擎………………………………………………………251
第9章 图形格式…………………………………………………………252
9.1 图形设备…………………………………………………………252
9.2 图形输出格式……………………………………………………254
9.2.1 矢量格式………………………………………………………254
9.2.2 光栅格式………………………………………………………258
9.3 在其他文档中使用R图像…………………………………………260
9.3.1 LATEX…………………………………………………………260
9.3.2 “生产性”软件………………………………………………260
9.3.3 网页……………………………………………………………261
9.4 特定设备特性……………………………………………………261
9.5 多页面输出………………………………………………………262
9.6 展示列表…………………………………………………………262
9.7 扩展包……………………………………………………………263
第10章 绘图参数………………………………………………………265
10.1 颜色………………………………………………………………265
10.1.1 半透明颜色…………………………………………………267
10.1.2 颜色的转换…………………………………………………267
10.1.3 颜色集合……………………………………………………268
10.1.4 颜色指定对设备的依赖……………………………………270
10.2 线条样式…………………………………………………………270
10.2.1 线条宽度……………………………………………………270
10.2.2 线条类型……………………………………………………270
10.2.3 线条的端点和连接…………………………………………271
10.3 数据符号…………………………………………………………272
10.4 字体………………………………………………………………273
10.4.1 字体族………………………………………………………273
10.4.2 字体外观……………………………………………………274
10.4.3 多行文本……………………………………………………274
10.4.4 区域设置……………………………………………………275
10.5 数学公式…………………………………………………………275
第4部分 绘图扩展包……………………………………………………277
第11章 图形扩展包……………………………………………………278
11.1 绘制文本的技巧…………………………………………………278
11.1.1 在图中绘制格式化的文本…………………………………279
11.1.2 避免文本重叠………………………………………………281
11.2 特殊绘图原型……………………………………………………285
11.2.1 置信条………………………………………………………288
11.3 颜色的计算………………………………………………………289
11.3.1 色彩空间包…………………………………………………290
11.3.2 RColorBrewer 包………………………………………………291
11.3.3 munsell包……………………………………………………291
11.3.4 dichromat包…………………………………………………292
11.4 定制坐标系统……………………………………………………292
11.4.1 在传统坐标系统中进行转换………………………………292
11.4.2 子图形………………………………………………………293
11.5 非典型坐标轴……………………………………………………295
第12章 绘图扩展包……………………………………………………298
12.1 韦恩图……………………………………………………………298
12.2 切尔诺夫脸谱图…………………………………………………301
12.3 三元图……………………………………………………………302
12.3.1 土壤质地图……………………………………………
R绘图系统 第2版 下载 mobi epub pdf txt 电子书 格式