- 论坛徽章:
- 59
|
(1)在日常工作中,R最常用的数据可视化包和工具是什么?请具体列举,并说明优缺点。
R常用的数据可视化包和工具有ggplot2,recharts,rCharts,shiny,rbokeh,leaflet,plotty等。
1、ggplot是一个拥有一套完备语法且容易上手的绘图系统,在Python和R中都能引入并使用,在数据分析可视化领域拥有极为广泛的应用。本篇从R的角度介绍如何使用ggplot2包,首先给几个我觉得最值得推荐的理由:
a)采用“图层”叠加的设计方式,一方面可以增加不同的图之间的联系,另一方面也有利于学习和理解该package,photoshop的老玩家应该比较能理解这个带来的巨大便利
b)适用范围广,拥有详尽的文档,通过?和对应的函数即可在R中找到函数说明文档和对应的实例
c)在R和Python中均可使用,降低两门语言之间互相过度的学习成本
2、Leaflet包是号称最受欢迎的JS的开源交互式地图包( most popular open-source JavaScript libraries for interactive maps),可以直接加载 OpenStreetMap, Mapbox, and CartoDB的底图数据,LeafletR主要是用R语言的语法封装了JS版的Leaflet,可以在R语言的plot窗口,利用html5技术显示各种地图,还可以绘制自己的要素图形。
它有如下功能:
交互地图浏览(缩放、平移)
使用多种底图进行任意组合
加载地图瓦片(WMTS)
点要素定位标记
多边形要素标记
线要素标记
弹出窗口
解析加载GeoJson
从R或者RSutido创建地图窗口
可以把地图嵌入 knitr/R包所生成的Markdown文档中,或者是Shiny制作的APP中。
可以直接获取通过SP包生成就(加载)的空间对象以及包含经纬度的数据框进行展示。
可以设定地图范围以及封装自定义的鼠标事件。
3、rCharts直接在R中生成基于D3的Web界面。
4、Recharts 是一个用 React 和 D3构建的重新定义的图表库。这个库能帮助你在 React 应用中轻易绘制图表,Recharts 的主要特点:
简单地使用 React 组件进行部署
支持原生 SVG,轻量级应用一些 D3 子模块
5、Shiny 是一个为 R 模型提供 Web 交互界面的应用框架,非常容易编写应用,不要求有 Web 开发技能。
Shiny 由 RStudio 公司开发,通过 CRAN 下载安装,利用R语言轻松开发交互式Web应用。
6、rbokeh,快速浏览了下,非常美观灵活好用,又发现其在很多语言也有应用,包括R语言,不过是刚刚发布的,好像功能比ggplot2包更强大
7、Leaflet 是一个为移动设备设计的交互式地图的开源的 javascript库, 并只有38k,包含了大多数开发者需要的地图特点。
8、Plotty通用于Python和R语言。
(2)不同统计图形有什么优劣?为什么不建议使用饼图、甜甜圈图等图形?哪种情况下数据不适合通过直方图展示?
数据可视化就是借助视觉的表达方式(不局限于文字),将枯燥的,专业的,不直观的数据内容,有趣的、浅显的、直观的传达给观众的一种手段。
非设计师在制作数据可视化时,往往会因为重点突出数据的重要性,而让可视化图表变得枯燥乏味。而设计师在制作数据可视化时,又会因为过度注重绚丽多彩而让数据的呈现效果大打折扣。所以在这种大环境下,催生出了数据可视化行业。
作为设计师,如何拥抱这个新兴的行业,如何把握设计与功能之间的平衡,从而更好的沟通与传达信息,即是本文的重点。
信息图表,就是数据可视化后产生的结果,就是我们在工作汇报中,项目介绍中,以及后台系统中经常见到的数据图表。
信息图形由信息和图形两个词语组成,它被称之为“信息图形”(Infographics或Information Graphics)。信息图形最初是在旧的纸质媒体上刊登的,更加有助于人们理解新闻信息的可视化内容。
饼图和甜甜圈图展现的信息量不大,而且比较紧凑,在展示效果上不是太好。如果数据量很少,使用直方图可能就两三个,这个时候更适合饼图。
(3)本书是一本以实战为主的R数据可视化图书,但也不乏对其背后原理的讲解。你觉得在实际工作中,哪些地方需要更多、更深入的探讨和说明?
要找准R语言的适用场合,结合其它脚本语言如Python,Php等,更充分的发挥各自擅长的地方。 |
|