目录
为帮助开发者小伙伴快速学习快速提高,我开辟了《新手上路常见问答》栏目,将大家的问题汇集起来,希望能给大家一些快速导引,避免给自己挖坑,少走弯路。
今天来聊聊如何玩数据可视化。
1. 什么是数据可视化?
数据可视化主要旨在借助于图形化手段,清晰有效地传达与沟通信息。数据可视化不能因为要实现其功能用途而令人感到枯燥乏味,也不能为了看上去绚丽多彩而显得极端复杂。为了有效地传达思想概念,设计者要把握设计与功能之间的平衡,通过直观地传达关键的方面与特征,从而实现对于相当稀疏而又复杂的数据集的深入洞察,创造出华而不实的数据可视化形式。
数据可视化与信息图形、信息可视化、科学可视化以及统计图形密切相关。当前,在研究、教学和开发领域,数据可视化乃是一个极为活跃而又关键的方面。
2. 数据可视化的适用范围是?
从信息的呈现方式来看,数据可视化包括统计图形和主题图, 统计图形包括散点图、直方图、概率图、残差图(residual plot)、箱形图、块图以及双标图等等。下图解释了一些典型图形的适用场景。
主题图是表现特定主题或者属性的地图。与表现常用地理特征(如森林、道路和政区边界等)的普通参考地图相比,专题地图强调空间中一种或少数几种地理特征的分布。这些特征可以是自然特征,比如气候;也可以为人文特征,比如人口密度或健康问题。图中为地形图上的等高线。
从图形设计和信息表达的角度来看,数据可视化的主题包括思维导图、新闻的显示、数据的显示连接的显示、网站的显示、文章与资源、工具与服务。
下面介绍的内容大家请参考
Data Visualization: Modern Approaches — Smashing Magazine
第一,思维导图。Informationarchitects.jp 依据分类、相似性、成功度、知名度和前景,为当年互联网上最成功的200个网站制作了一张趋势地图。设计师在图中应用了大量暗喻和巧合,如果了解东京的城市地理状况,大家看图时一定会心一笑。
第二,Newsmap(新闻地图)是google新闻聚合器上实时的新闻反馈的可视化呈现。数据块的大小对应了新闻受欢迎的程度。
第三,数据展示。TimeMagazine(时代周刊)使用峰值形状的分布来强调地图上美国人口的稠密程度。
第四,显示关联。Munterbund使用信息图形展现了书中文字的相似性。“我们尝试创造一个能够根据某些定义好的规则自动生成图像的系统。难度在于图像形式和文章的排版样式这两者都是极富吸引力和信息量的。”
第五,网站的显示。Spacetime (时空)公司承诺,那些通过网页的小缩略图像挖矿一样查找信息的时代一去不返了。其用优雅的三维特效来呈现用户的搜索请求结果,支持Google、yahoo、Flickr、eBay、Google图片搜索。
第六,文章和资源,Visualcomplexity.com项目介绍了数据可视化最美的方法和进一步的参考资料。拥有超过450辑的图片。
第七,工具和服务,IBM Many Eyes(IBM之眼)这是一个基于JAVA的可视化数据在线服务。帮助注册用户创建饼图、框图、树型图、柱状图和直方图。
3. 数据可视化值得参考的视频
给大家介绍一段TED的视频,用动态数据分析来看世界这50年
Hans Rosling: The best stats you've ever seen | TED Talk
可以在B站看到
Hans Rosling The best stats you've ever seen用前所未有的好方法诠释数字统计-未曾见过最牛的数据统计_哔哩哔哩_bilibili
Hans Rosling在视频中介绍了用动态数据分析来看世界这50年。图中两幅图就展示了世界在1987年和2003年的一些数据。
4. 数据可视化有哪些参考资料?
数据可视化的现代方法,前面提到过
DataVisualization: Modern Approaches
数据可视化的基本常识
Data Visualization and Infographics — Smashing Magazine
数据可视化和信息图表的新闻和知识资源
人类感知与数据可视化
Data Visualization for Human Perception | The Encyclopedia of Human-Computer Interaction, 2nd Ed.
5. 数据可视化有哪些参考的框架?
这篇文章介绍了38个不错的数据可视化工具,大部分都是JavaScript的库(JavaScript Library)
35 incredible dataviz tools | Creative Bloq
介绍几个可以快速上手、简单而灵活的数据可视化工具
Chart.js
http://www.chartjs.org/
Tableau
https://public.tableau.com/s/
Raw 可以做基于矢量的数据可视化
http://raw.densitydesign.org/
Dygraphs
D3.js 用得比较多
看看D3的效果图