12个ggplot2扩展包帮你实现更强大的可视化
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/ (有一部分扩展包未收录在内)
十二个ggplot2扩展包介绍
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使用。
网址: https://github.com/ricardo-bion/ggradar
简介: 雷达图又叫戴布拉图、蜘蛛网图,通常在财务报表分析中使用较多。但在描述性统计分析中,雷达图正在被越来越多的人使用,适用于显示三个或更多的维度的变量。
网址: 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/
12个ggplot2扩展包帮你实现更强大的可视化相关推荐
- 收藏 | 12个ggplot2拓展程序助你强化R可视化
作者:Asha Hill 翻译:张玲 校对:梁傅淇 本文约2900字,建议阅读10分钟. 本文将为大家简要介绍12个ggplot2拓展程序,包括它们让R可视化更强大的原因以及相应的具体示例. 自200 ...
- 苹果推出iPhone 12,价格比你想象中更实惠
今天是苹果公司一个重要日子,它发布了一系列的产品线,其中包括iPhone 12 Mini,iPhone 12,iPhone 12 Pro和iPhone 12 Pro Max. 苹果公司拥抱5G,App ...
- 扩展坞可以把手机投到显示器吗_你真的会用手机吗?这款ORICO多功能扩展坞可以让手机变的更强大...
原标题:你真的会用手机吗?这款ORICO多功能扩展坞可以让手机变的更强大 现如今科技越来越发达,手机也早已变的不仅仅是通讯工具那么简单,可以说我们一天生活.工作.学习中的许多事物都已经离不开手机.正因 ...
- windows比cmd更强大的 WMIC命令使用详解
文章目录 什么是wmic ? WMIC能做什么? WMIC命令使用帮助文档 WMIC命令使用实例 wmic的运行方式可以有两种法 1.显示进程的详细信息 2.停止.暂停和运行服务功能 3.显示出BIO ...
- MaxCompute2.0性能评测:更强大、更高效之上的更快速
原文链接:http://click.aliyun.com/m/13999/MaxCompute2.0(原Odps):通过性能评测,MaxCompute2.0离线计算比同类产品Hive2.0 on Te ...
- Python的regex模块——更强大的正则表达式引擎
Python自带了正则表达式引擎(内置的re模块),但是不支持一些高级特性,比如下面这几个: 固化分组 Atomic grouping 占有优先量词 Possessive quantifi ...
- Google | 突破瓶颈,打造更强大的Transformer
一只小狐狸带你解锁炼丹术&NLP秘籍 作者:苏剑林 (来自追一科技,人称"苏神") 前言 <Attention is All You Need>一文发布后,基于 ...
- dll文件用什么语言编写_为什么Unix不用功能更强大的C++而是用C编写
有人总会说C++不是要比C的作用大很多,功能也更多.那为什么Unix不用功能更强大的C++而是用C编写?关于Unix为什么用C而不是C ++编写的显而易见的答案是C ++是在C之后诞生的.另一个原因是 ...
- 既然Tengine比Nginx更强大,为什么Tengine没有取代Nginx呢?
原文链接 https://segmentfault.com/q/1010000008623268 既然Tengine比Nginx更强大,为什么Tengine没有取代Nginx呢? 看了一下淘宝的Ten ...
最新文章
- CV07-DeepLab v3+笔记
- .net System.Web.Caching.Cache缓存类使用详解(转载)
- 按照重复的次数高到低进行排序
- 二次优化问题dfp_优化设计-fmincon函数介绍-序列二次的规划(SQP)-subspacetrustregion-activesett.pdf...
- bigdecimal判断大于零_Python零基础入门(七):运算符
- MySQL 的备份和恢复机制 MyISAM 和 Innodb
- freemarker生成word模板
- [WPF]根据显示区域宽度裁剪字符串
- JAVA编程思想——读书笔记 类再生
- Intellij IDEA 发布后的项目在哪里
- PySide2嵌入外部程序
- omnet++tictoc2案例解析
- 添加Nginx ALG模块支持FTP协议ALG
- leader epoch
- 跨境公路货运调研分析-市场规模、市场份额、市场定位、产品类型以及发展规划
- Java基础系列:判断空指针的三种方式
- [转]签了工作之后才发现,自己太草率了!(很长很真实!但会对你有所帮助的!)
- C# Md5与AES加密解密源码记录
- 关于platform_device和platform_driver的匹配
- Android 百度鹰眼 SDK