描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787121363665
系统性地介绍了使用ggplot2 包及其拓展包绘制类别对比型、数据关系型、时间序列型、整体局部型等常见的二维图表的方法,以及使用plot3D 包绘制三维图表(包括三维散点图、柱形图和曲面图等)的方法
《R数据可视化之美:专业图表绘制指南》主要介绍使用R 中的ggplot2 包及其拓展包绘制专业图表的方法。《R数据可视化之美:专业图表绘制指南》先介绍了R 语言编程基础知识,以及使用dplyr、tidyr、reshape2 等包的数据操作方法;再对比了base、lattice 和ggplot2 包的图形语法。本书系统性地介绍了使用ggplot2 包及其拓展包绘制类别对比型、数据关系型、时间序列型、整体局部型等常见的二维图表的方法,以及使用plot3D 包绘制三维图表(包括三维散点图、柱形图和曲面图等)的方法。另外,《R数据可视化之美:专业图表绘制指南》也介绍了论文中学术图表的图表配色、规范格式等相关技能与知识。
第1章 R语言编程与绘图基础 1
1.1 学术图表的基本概念 2
1.1.1 学术图表的基本作用 3
1.1.2 学术图表的基本类别 5
1.1.3 学术图表的绘制原则 7
1.2 你为什么要选择R 8
1.3 R软件的安装与使用 15
1.3.1 R与RStudio的安装 15
1.3.2 包的安装与加载 16
1.4 R语言编程基础 17
1.4.1 数据类型 17
1.4.2 数据结构 18
1.4.3 数据属性 21
1.4.4 数据的导入导出 23
1.4.5 控制语句与函数编写 26
1.5 R语言绘图基础 27
1.6 ggplot2图形语法 29
1.6.1 geom_×××()与stat_×××() 31
1.6.2 视觉通道映射 34
1.6.3 度量调整 37
1.6.4 坐标系 43
1.6.5 图例 52
1.6.6 主题系统 54
1.6.7 位置调整 57
1.7 学术图表的色彩运用原理 61
1.7.1 颜色模式 61
1.7.2 颜色主题的搭配原理 66
1.7.3 学术图表的颜色主题 69
1.7.4 颜色方案的拾取使用 71
1.7.5 颜色主题的应用案例 74
1.8 图表的基本类型 77
1.8.1 类别比较 78
1.8.2 数据关系 79
1.8.3 数据分布 79
1.8.4 时间序列 80
1.8.5 局部整体 80
1.8.6 地理空间 81
第2章 R语言数据处理基础 83
2.1 表格的转换 84
2.1.1 表格的变换 84
2.1.2 变量的变换 85
2.1.3 表格的排序 86
2.2 表格的整理 86
2.2.1 表格的拼接 86
2.2.2 表格的融合 87
2.2.3 表格的分组操作 89
第3章 类别比较型图表 92
3.1 柱形图系列 93
3.1.1 单数据系列柱形图 94
3.1.2 多数据系列柱形图 95
3.1.3 堆积柱形图 96
3.1.4 百分比堆积柱形图 97
3.2 条形图系列 98
3.3 不等宽柱形图 99
3.4 克利夫兰点图系列 100
3.5 坡度图 102
3.6 南丁格尔玫瑰图 103
3.7 径向柱形图 107
3.8 雷达图 109
3.9 词云 112
第4章 数据关系型图表 116
4.1 散点图系列 117
4.1.1 趋势显示的二维散点图 117
4.1.2 分布显示的二维散点图 124
4.1.3 气泡图 128
4.1.4 三维散点图 130
4.2 曲面拟合图 133
4.3 等高线图 136
4.4 切面图 138
4.5 三元相图 139
4.6 散点曲线图系列 141
4.7 瀑布图 143
4.8 相关系数图 149
4.9 韦恩图 151
4.10 树形图 152
4.11 圆堆积图 154
4.12 和弦图 156
4.13 桑基图 160
第5章 数据分布型图表 163
5.1 统计直方图和核密度估计图 165
5.1.1 统计直方图 165
5.1.2 核密度估计图 165
5.2 数据分布系列 169
5.2.1 散点分布图系列 170
5.2.2 柱形分布图系列 172
5.2.3 箱形图系列 173
5.2.4 其他图表 178
5.3 二维统计直方图和二维核密度估计图 188
5.3.1 二维统计直方图 188
5.3.2 二维核密度估计图 188
5.4 金字塔图和镜面图 192
第6章 时间序列型图表 194
6.1 折线图与面积图系列 195
6.1.1 折线图 195
6.1.2 面积图 195
6.2 日历图 199
6.3 螺旋图 202
6.4 量化波形图 207
6.5 地平线图 210
第7章 局部整体型图表 213
7.1 饼状图系列 214
7.1.1 饼图 214
7.1.2 圆环图 216
7.1.3 复合饼图系列 216
7.2 旭日图 219
7.3 矩形树状图 221
7.4 马赛克图 224
7.5 华夫饼图 227
第8章 高维数据可视化 229
8.1 高维数据的变换展示 231
8.1.1 主成分分析法 231
8.1.2 t-SNE算法 233
8.2 分面图 234
8.3 矩阵散点图 238
8.4 热力图 240
8.5 平行坐标系图 243
8.6 RadViz图 245
8.7 图标法 246
8.7.1 基于星形图的图标法 247
8.7.2 基于柱形图的图标法 249
8.7.3 切尔诺夫脸谱图 251
8.8 表格图 254
第9章 论文中学术图表的升级技能 255
9.1 图片的截取与处理软件 256
9.1.1 常见截图软件 256
9.1.2 图片处理软件 256
9.2 论文中学术图表的规范与调整 257
9.2.1 图片的格式与转换 260
9.2.2 图片的分辨率 262
9.2.3 图片的色彩要求 264
9.2.4 图片的物理尺寸 265
9.2.5 图片的标注格式 266
9.2.6 图片的占内存容量 266
9.2.7 在R中导出图表 268
9.3 图表绘制的必备技能 269
9.3.1 矢量图表元素的修改 269
9.3.2 期刊论文的图片提取 271
9.3.3 图表数据的重新提取 271
参考文献 274
本书主要介绍使用R中的ggplot2包及其拓展包绘制专业图表的方法。本书先介绍了R语言编程基础知识,以及使用dplyr、tidyr、reshape2等包的数据操作方法;再对比了base、lattice和ggplot2包的图形语法。本书首次系统性地介绍了使用ggplot2包及其拓展包绘制类别对比型、数据关系型、时间序列型、整体局部型等常见的二维图表的方法,以及使用plot3D包绘制三维图表(包括三维散点图、柱形图和曲面图等)的方法。另外,本书也首次介绍了论文中学术图表的图表配色、规范格式等相关技能与知识。
本书定位
虽然现在Python语言越来越流行,尤其是在机器学习与深度学习等领域,但是R语言在数据分析与可视化方面仍然具有绝对的优势,其中ggplot2包及其拓展包人性化的绘图语法大受用户的喜爱,特别是生物信息与医学研究者。现在Nature、Science和Cell等期刊上大量的图表都是使用R语言绘制的,所以很有必要系统性地介绍R语言的绘图方法。
R ggplot2有两本很经典的教程:ggplot2 Elegant Graphics for Data Analysis和R Graphics Cookbook,两书重点介绍了ggplot2包的绘图语法及常见图表的绘制方法,但是其介绍的图表种类并不多。所以本书基于R中的ggplot2包及其拓展包和plot3D包,系统性地介绍了几乎所有常见的二维和三维图表的绘制方法,包括简单的柱形图系列、条形图系列、折线图系列,以及复杂的和弦图、矩形树状图、日历图等。
读者对象
本书适用于想学习数据分析与可视化相关专业课程的高校学生,以及对数据分析与可视化感兴趣的职场人士阅读,尤其是R语言用户。从软件掌握程度而言,本书同样适用于零基础学习R语言的用户。
阅读指南
全书内容共有9章,其中,第1章和第2章是后面7章的基础,第3~8章都是独立章节,可以根据实际需求有选择性地进行学习。
第1章 介绍R语言编程与数据可视化基础,对比了base、lattice和ggplot2包的图形语法,重点介绍了ggplot2包的图形语法;
第2章 介绍R语言数据处理基础,重点介绍了使用dplyr、tidyr、reshape2等包的数据操作方法;
第3章 介绍类别比较型图表,包括柱形图系列、条形图系列、南丁格尔玫瑰图、径向柱图等约30张图表;
第4章 介绍数据关系型图表,包括二维和三维散点图、气泡图、等高线图、三维曲面图、三元相图、二维和三维瀑布图、相关系数热力图等约60张图表;
第5章 介绍数据分布型图表,包括一维、二维和三维的统计直方图和核密度估计图、抖动散点图、点阵图、箱形图、小提琴图等约50张图表;
第6章 介绍时间序列型图表,包括折线图和面积图系列、日历图、螺旋图系列、量化波形图、地平线图等约20张图表;
第7章 介绍局部整体型图表,包括饼图、散点复合饼图系列、旭日图、矩形树状图、马赛克图、华夫饼图等约20张图表;
第8章 介绍高维数据的可视化方法,包括分面图系列、矩阵散点图、热力图、平行坐标系图、RadViz图、图标法等约20张图表;
第9章 介绍论文中学术图表的常用技能,包括常见的截图与图片处理软件及其功能、矢量图片的修改、论文中学术图表数据的提取与重绘、论文中学术图表的规范与调整等。
应用范围
本书的图表绘制方法都是基于R中的ggplot2包及其拓展包和其他绘图包实现的,几乎适应于所有常见的二维和三维图表。但是由于依据《地图管理条例》第十五条规定:“国家实行地图审核制度。向社会公开的地图,应当报送有审核权的测绘地理信息行政主管部门审核。但是,景区图、街区图、地铁线路图等内容简单的地图除外。”本书本来有专门的章节讲解使用R语言如何绘制不同地理坐标投影下,从世界到不同国家与区域的地图,但是由于地图审核周期等方面的原因忍痛移除。
适用版本
本书所用R版本为:3.3.3。R作为开源免费的软件,数据分析与可视化的包更新迭代很快,这是它的优势。但是有时候有些代码运行可能会由于R或者R包版本的更新,而出现函数弃用(deprecated)的情况。此时,需要自己更新代码,使用新的函数替代原有的函数等。
源代码
本书配备有几乎所有图表的R语言源文件及其.csv或.txt格式的数据源文件。但是需要注意的是,如果运行的R语言版本没有安装相应的数据分析与可视化的包(package),那么请预先安装相应的包,才能成功运行代码。同时,也请注意运行R语言和R包的版本是否已经更新。
与我联系
因本人知识与能力所限,书中纰漏之处在所难免,欢迎并恳请读者朋友们给予批评与指正,可以通过邮箱联系笔者本人;如果读者有关于R语言学术图表或商业图表绘制的问题,可以联系笔者交流。另外,更多关于R语言图表绘制的教程请关注笔者的博客、专栏和微博平台。也可以重点关注我们的微信公众号:EasyCharts,也可以添加笔者微信:EasyCharts。R语言数据分析与可视化的文章会优先发表在微信公众号平台。
致谢
桃李春风一杯酒,江湖夜雨十年灯。笔者的处女作《Excel数据之美:科学图表与商业图表的绘制》也至今出版逾两年,一直想着要修订这本书的。但是旧书未翻新,新书忙于码字改稿,实在是有愧于读者。其实,在撰写这本新书的时候,数次想放弃。写书实在是一件费力劳神的事情,笔者是凭借着对数据可视化的热爱才坚持至今。
这本书从2017年5月25日开始动笔,断断续续居然也花费了两年的时间。与其说是花费,不如说是陪伴吧。笔者经常对朋友开玩笑说,心情不好的时候码码代码、画画图表,是一件消磨时间、放松心情的事情。
在断断续续的写稿中,笔者也认识了很多热爱数据分析与可视化的朋友,甚是荣幸,也得益于他们的帮助。很感谢《R语言游戏数据分析与挖掘》的作者谢佳标老师和先锋信息科技有限公司CEO林祯舜老师对笔者的鼓励与帮助,也因此有幸参加2018年的R语言大会;也非常感谢在码字、写代码时一起交流学习的李誉辉(四川大学高分子学院)、杜雨(美团用户平台—大数据与算法部—商业分组部)、刘钰(河南大学土木建筑学院)、厚缊(深圳中观经济咨询有限公司)等诸多技术大佬。因为有你们的帮助,所以才有今天这本书。
最后,想对大家说,也是对自己说:且将新火试新茶,诗酒趁年华!
作者
2019年3月31日
“Beautiful Visualization with R” provides a comprehensive introduction to the many types of visualisation that you can create with R. As well as foundational visualisations like bar charts, scatterplots, and histogram, this book will teach you about more complex tools like 3d plots, ternary plots, polar coordinate plots and more! Read this book to learn how to create visually compelling plots that help you understand your data.
——Hadley Wickham RStudio 首席科学家,莱斯大学统计系助理教授,ggplot2等软件包开发者
一图胜千言。用图表表达数据是人机和人际沟通的重要方式。然而,数据的复杂性、任务的多样性、用户的主观性,导致精确贴合用户需求的可视化工具难求。R语言是一个通用的数据分析工具。基于R语言的图表快速生成,是提升可视化的平民化和普适化的重要途经。感谢张杰,做了这样一个关键的尝试,相信会极大地促进数据科学的发展。
——陈为 浙江大学教授,浙江大学计算机学院副院长,博士生导师
在大数据时代,数据可视化对数据分析的*终表达尤为重要。在众多数据可视化工具中,R与Python都是数据分析与可视化的常用工具,而本书系统地介绍了使用R语言绘制各种图表的方法。相信,本书能够极好地帮助学术科研人员展示数据分析的结果。
——李平 澳门科技大学资讯科技学院助理教授
R 是一门用于统计计算和作图的语言,数据科学工作者钟爱的工具之一。市面上不乏详细讲述 R 语言的书籍;而本书以 R 语言为背景,通俗易懂地讲述了大量数据可视化领域的专业知识,从图形语法、色彩原理、视觉通道到各类图表的应用实践。张杰的这本书让人眼前一亮。
——林峰 数据可视化技术专家,AntV产品架构师,ECharts 创始人
评论
还没有评论。