ggplot2自从2007年推出以来,成为世界范围内下载最频繁、使用最广泛的R包之一。许多人包括ggplot2的创建人Hadley Wickham将这一成功归功于ggplot2背后的哲学。这个软件包的灵感来源于Leland Wilkinson编写的《图形语法》一书,在此书中将graphs 分解成scales和layers,并将原始数据与表现形式分离开。
具体使用可见下面简化示例和后面列出的往期绘图文章。
如果你是ggplot2的众多粉丝之一,你会发现自己有时想要寻找更多“花哨”的形式来扩展它的功能。幸运的是,在过去10年里,R社区一直在努力为ggplot2构建扩展包,到如今已有超过40个扩展包可供使用,今天为要介绍的是大家比较钟爱的12个ggplot2扩展包,想要查看所有ggplot2扩展包的介绍及使用例子,请浏览官网:http://www.ggplot2-exts.org/gallery/ (有一部分扩展包未收录在内)
1 gganimate
作者: David Robinson
网址 :https://www.rdocumentation.org/packages/gganimate 或 https://github.com/thomasp85/gganimate (新版)
简介: gganimate可以使图片以更加生动形象的动图展示出来,可以直观展示数据的动态变化过程,最后我们可以将动画保存为GIF、视频或动画网页,以便在RStudio或笔记本之外使用。如下面这个例子以动态图展现了历年来诺贝尔获奖者出生地的变化情况,《利用gganimate可视化全球范围R-Ladies(R社区性别多样性组织)发展情况》一文中有更详细的事例展示如何使用此包。
2 ggthemes
作者: Jeffrey B. Arnold
网址: https://www.rdocumentation.org/packages/ggthemes
简介: ggthemes主要作用是提供一些额外的themes、geoms、scales可以让我们快速画出不同主题、背景和配色方案的图片。学术图表基本配色方法
3 ggpubr
作者: Alboukadel Kassambara
网址 :https://www.rdocumentation.org/packages/ggpubr
简介: 要通过ggplot2定制一套图形,尤其是适用于杂志期刊等出版物的图形,对于那些没有深入了解ggplot2的人来说就有点困难了,而ggpubr可轻松绘制出符合出版物要求的图形。
4 patchwork
作者: Thomas Pedersen
网址: https://www.rdocumentation.org/packages/patchwork
简介: 平常我们绘制图形的时候常常要将几幅图形组合在一起,而ggplot2本身没有强大的拼图语法,这时利用patchwork扩展包,使用几个简单的如/
、+
、*
、^
等符号就可以轻松实现拼图这件事。还有其它包也可以做类似事情,具体见ggplot2学习笔记之图形排列。
5 ggridges
作者: Claus O. Wilke
网址: https://www.rdocumentation.org/packages/ggridges
简介: ggridges包主要用来绘制山峦图。尤其是针对时间或者空间分布可视化具有十分好的效果。
6 ggdendro
作者: Andrie de Vries
网址: https://www.rdocumentation.org/packages/ggdendro
简介: ggdendro有几个函数可用来提取树状图数据,可以保存或操作数据本身。旋转你的树状图、删除网格背景、倒转scale
,画三角线段,创建diana
和Agnes
聚类图,等等。结合dendextend
和ape
包来完全控制你的树状图。
7 ggmap
作者: David Kahle
网址: https://www.rdocumentation.org/packages/ggmap
简介: ggmap包整合了四种地图资源,分别是Google
、OpenStreetMaps
、Stamen
,它使gplot2的所有geoms都可以用于地图可视化,可以在地图上绘制等高线图或散点图。
8 ggrepel
作者: Kamil Slowikowski
网址: https://cran.r-project.org/web/packages/ggrepel
简介: 当我们在图形中添加标签时,标签之间很容易相互重叠,ggrepel包可以解决这个问题,具体见ggrepel使用。
9 ggcorrplot
作者: Alboukadel Kassambara
网址: https://github.com/kassambara/ggcorrplot
简介: ggcorrart是受corrplot
包的启发,但它的构建是为了与ggplot2一起使用,这就意味着有很多东西可以让我们控制矩阵的外观,从改变颜色、形状或大小(如下面的圆形矩阵),到添加系数标签,根据层次聚类重新排列矩阵等等,具体见 ggcorplot使用。
10 ggradar
作者: Ricardo Bion
网址: https://github.com/ricardo-bion/ggradar
简介: 雷达图又叫戴布拉图、蜘蛛网图,通常在财务报表分析中使用较多。但在描述性统计分析中,雷达图正在被越来越多的人使用,适用于显示三个或更多的维度的变量。
11 GGally
作者: Barret Schloerke
网址: http://ggobi.github.io/ggally/
简介: GGally汇集了几个有用的可视化功能来扩展ggplot2,包括配对图矩阵,散点图矩阵,平行坐标图,生存图,以及绘制网络的几个函数。可以使用GGally快速绘制模型的系数,或者在地图上绘制网络,如下面的图片所示。
12 ggiraph
**作者:**David Gohel
网址: http://davidgohel.github.io/ggiraph
简介: ggiraph可以给图片添加高级交互或动画,可以扩展现有的ggplot2条形图、散点图、方框图、地图等,并在悬停时显示数据信息(例如数据值或标签),如下图所示。
更多扩展包见官网
http://www.ggplot2-exts.org/gallery/