问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

R语言数据可视化常用软件包全解析

创作时间:
作者:
@小白创作中心

R语言数据可视化常用软件包全解析

引用
CSDN
1.
https://blog.csdn.net/daitulin/article/details/136271827

R语言作为数据科学领域的重要工具,其数据可视化能力备受关注。本文将为您详细介绍R语言中常用的可视化软件包及其特点,帮助您更好地掌握数据可视化技能。

1. R基础可视化包:graphics

安装好R后,会自动加载一个数据可视化包graphics,它包含了R的基本绘图功能,可以绘制常用的直方图、线图、点图、饼图、密度曲线、三维透视图等。

2. ggplot2包及其拓展包

在基于R语言的数据可视化方面,ggplot2包已经发展成为最受欢迎的R包。并且在ggplot2包的基础上,还衍生出了各种各样的R包用来丰富ggplot2的绘图功能,将这些包和ggplot2包结合使用,能够获得更加精美的图像。

2.1 ggiraphExtra包

ggiraphExtra是绘制可交互ggplot2图像的一个包,它扩展了ggplot2ggiraph两个包的数据可视化方式,增强了它们的可交互图像的能力。

2.2 GGally包

GGally包是通过添加几个函数来扩展ggplot2,将数据可视化变的更加简单,在数据转换方面更加简便。GGally包通常用于可视化矩阵散点图、平行坐标图、社交网络图等。

2.3 ggChernoff包

ggChernoff包为ggplot2引入了一个geom_chernoff()函数,该函数的功能和geom_point()很像,只是它绘制时利用一些表情符号(比如笑脸等)来代替点。

2.4 ggTimeSeries包

ggTimeSerise包提供了一些新颖的时间序列数据可视化功能,可以在ggplot2包的基础上绘制出更让人感兴趣的时间序列图像,例如日历图、蒸汽图等。

2.5 treemapify和ggpol包

treemapify是一个基于ggplot2包对树图(Treemap,主要是矩形树图)进行可视化的包。ggpol是基于ggplot2包用于绘制议会图(结构像议会现场的扇环型座席分布)的可视化包,同时还添加了其他的可视化方法,如可视化混淆矩阵、突出显示区域的时间序列图等。


2.6 ggridges和gganimate包

ggridges是基于ggplot2包专门用于可视化脊线图的包。脊线图是部分重叠的线图,可产生山脉的形象,对可视化时间或空间分布的变化非常有效。

gganimate是将ggplot2包的可视化图像转化成动画的包,动画图像不仅具有视觉上的冲击力,而且能够传递更多的信息,可以对数据进行宏观分析。

2.7 ggfortify包

ggfortify是一个基于ggplot2的拓展包,它包含autoplot()函数,可以只用一行代码就可对主成分分析、聚类分析、回归分析、时间序列分析等方法的统计结果,以ggplot2的风格进行可视化,大大提高了数据分析的效率。

3. 热力图数据可视化包:pheatmap

热力图是一个以颜色变化来显示数据的矩阵图形。R中有多个可视化数据热力图的包,其中pheatmap包用来可视化静态的热力图,d3heatmap包和heatmaply包可以可视化可交互的热力图。

4. 缺失值可视化包:VIM和naniar

其中naniar包的缺失值可视化图像是基于ggplot2包的,所以可以将图像更好的和ggplot2包结合,对图像进行调整。

5. 词云图数据可视化包:wordcloud2

在R中,有两个常用的可视化词云的包,分别是静态可视化词云包wordcloud和动态可视化词云包wordcloud2

6. 社交网络图数据可视化包

网络数据(或图数据)是一种重要的非结构化数据,不仅包含人与人之间的社交网络,还包含事物之间的各种联系,它们规模庞大、关系复杂、不易观察,网络数据的可视化成为数据挖掘的重要研究内容之一。

6.1 igraph包

igraph包是用来解决图与网络问题并对其进行可视化的包。

6.2 visNetwork

visNetwork是一个专门用于可视化可交互网络图的R包,并且可以和igraph包获得的图数据相互调用。其它的包中,networkD3包可以轻松创建基于Htmlwidgets框架的网络图,它支持力导向图、桑基图、树形图等三种类型的网络图。threejs包使用three.js和R的htmlwidgets包提供了绘制交互式的3D散点图、3D网络图和地球仪图的功能,其中3D网络图可以在三维空间分析节点之间的联系。

7. R语言的地图数据可视化包

地图信息数据可视化,常用于可视化与地理位置相关的数据。地图的引入,可以使读者在理解数据的大小、关系、变化趋势的同时,进一步分析数据在地理位置上的对应关系,从而传递更多有用的信息。R中绘制静态地图的常用R包有maps、ggmap、tmap包,其中tmap包还常用于制作地图动画,而leaflet、mapview等包常用于绘制可交互地图。

7.1 ggmap包

ggplot2包可以实现将地理信息数据进行可视化,而ggmap包是基于ggplot2可视化地图的拓展包,其绘图方法与ggplot2类似,两者相结合可以更方便的对地图数据进行可视化。

7.2 tmap包

tmap是R中较专业的地图数据可视化包,由Martijn Tennekes编写,主要用于绘制主题地图,与ggplot2包的“图形的分层语法”相同,可通过“+”来添加不同的图层。

7.3 leaflet包

leaflet是一个很受欢迎的用于可交互式地图的开源JavaScript包,使用该包绘制可交互地图具有很多优点,包括可以交互式平移、缩放地图;在地图上添加地图图块、标记、多边形、线、弹出窗口;将地图嵌入knitr、R Markdown文档或shiny应用程序中等。

7.4 mapview包

mapview是在leaflet包的基础上进一步封装的包,它可以快速、方便地对空间数据进行可视化,并且可以使用更少的程序绘制可交互式地图。在mapview包中,使用一个mapview()函数即可完成可交互地图的可视化。

8. R语言制作交互式数据分析应用

8.1 Shiny包

shiny是通过R直接构建交互式Web应用程序的软件包,由RStudio公司开发,它可以让用户与数据、分析进行交互操作,获取更加直观、丰富的信息。

8.2 flexdashboard包

shiny包类似,flexdashboard包支持以更简单、轻量级的方式构建数据可视化仪表盘,它通过R Markdown文件将数据进行可视化,并发布为网页形式的可视化仪表盘。flexdashboard包支持网页小部件、基本的网格图形、表格数据和文字注释等多种组件,还具有调用shiny中的小部件的功能。

9. R语言交互式数据数据可视化:plotly

plotly包是功能齐全的可交互数据可视化包,不但提供了多种编程语言接口来方便数据可视化,而且plotly包与R语言的结合较好。其还提供了将ggplot2包输出图像转化为可交互图像的方法。而且针对可交互的3D可视化图像,plotly包的可交互效果和渲染效果较好,且可以绘制各种各样的3D图像,如散点图、气泡图、曲面图等。

10. 3D图像可视化包

10.1 scatterplot3d包可视化3D散点图

10.2 plot3d包可视化3D图

10.3 rayshader包

rayshader包将ggplot2的可视化图像3D化。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号