在这个全民创业的火热年代,枯燥乏味的数据统计居然也靠“大数据”概念咸鱼翻身,突然变得炙手可热起来。既然大数据这么洋气,当然要好好钻研。梦想还是要有的,万一靠这发财了呢!
一,数据可视化的魔力
  大数据里面,我觉得最洋气的领域就是数据可视化了(其实是其它的不会...),俗话说的好,可视化就是大数据产业“长征的最后一公里”,是面向用户的最终数据体现形式,男人(用户)的唯一标准就是脸(图)好不好看。 
书上说数据可视化有数据挖掘,数据清洗,数据表现等等一堆过程,这里就长话短说单刀直入聊聊数据表现的画图环节。数据表现的大白话就是把数据画成图形,比如用Excel整个柱状图啥的。但是Excel这么简单人人都会,咋个体现咱们的专业性!这行当混饭吃的诀窍就是得把简单的事情复杂化,复杂到同行和客户看不懂了,恭喜你,已经是专家了! 
二,为什么MATLAB还不够
  为了把画个统计图这件事情搞复杂,业内人士处心积虑搞出来MATLAB等等重量级数据分析软件,画个条形图都有牛顿高斯这样的大科学家理论加持。当然牛逼的是这些软件能处理海量数据,用统计学理论如聚类分析,因子分析等挖掘出数据之间的关系,此之谓“数据分析”。数据分析软件能把数据以各种形式精确的表现出来,而且能够以三维立体图形等形式来唬人,效果相当不错。

  既然数据分析软件这么牛逼,那还有其他的工具软件什么事?但是别忘了,我们处在鸡血沸腾的移动互联网时代,一切不能在手机上搞的都要推倒重来!MATLAB数据分析软件做数据可视化的最大问题是成果的传播不便,一个精心制作具备交互功能的图形,如果别人没装MATLAB,那对不起,只能看静态图片了。

  其他还有很多牛逼的数据分析软件如Tableau等也是类似情况。

三,互联网开放标准的数据可视化工具
  因此,为了能够在网上迅速传播大数据可视化成果,一批基于互联网开放标准的数据可视化工具软件就应运而生了。这些工具是如此简单好用,导致大量学文科的新闻记者都学会了,出现了一个新产业叫"数据新闻",据说要革传统新闻产业的命,以后不会写代码的文科生不是好记者了...
  基于互联网开放标准的数据可视化工具软件大多数以javascript作为开发语言,辅于CSS作为美化手段,一般封装成图表框架,引入HTML页面后即可开箱使用。数据可以用json, csv的形式,通过javascript读取到程序中进行绘图。
此类工具从头到脚遵循HTML,CSS,JAVASCRIPT,CANVAS,SVG,JSON等互联网开放标准,从此不用担心数据和开发平台的兼容性。死在沙滩上的前浪Adobe Flash,以及加强版的Flex,因为走了封闭道路遭到苹果乔帮主为首的各路江湖大佬围剿,已是日薄西山。从已经被遗忘的Macromedia到今日的Adobe,Flash的没落告诉我们互联网时代不走开放标准路线才是最危险的。
四,互联网数据可视化工具的流派
  程序员是一个最痴迷于武侠(撕逼)的群体,当然最擅长用武功、兵器比喻开发工具。金庸老先生说,天下数据可视化工具,一寸长一寸强,一寸短一寸险。基于javascript的互联网数据可视化工具可大致以分两个流派:长枪和绣花针。长枪流派是封装好的图形库如ECharts,绣花针流派是从底层自行开发的工具库如d3.js。
  封装好的图形库犹如长枪,拿上手就可杀敌,功力强者威力无边,底子再差也能当烧火棍使着防身。以ECharts为例,添点数据就是一张具备交互功能的图表,还有各种贴心的图表另存为图片等小功能;至于图表类型,只有你想不到没有百度做不到,什么条型图散点图树状图都不说了,基于WebGL从太空望地球的图表都给你准备妥了。如果要开发大量重复性简单数据图表,ECharts这样的封装良好的图表库无疑是最好的选择。
  但是有些人就是喜欢折腾,放着方便的工具不用,非得用最原始麻烦的,比如那谁东方不败就爱用俩绣花针对敌,用d3.js做数据可视化感觉也差别多。所谓一寸短一寸险,说的就是d3.js这玩意没啥现成的组件可以开箱即用,但是一切可以自行配置无比灵活;只要你脑子里能想到的数据可视化表现形式,用d3.js基本都能做出来;但是如果功力不到家,那基本上是坑死自己。练d3.js这葵花宝典的第一步就是挥刀自宫,忘记所有现成的图表类型和组件,自己从头引入数据,绑定Dom,绘制坐标轴,设置颜色,折腾到吐血一张基本曲线图就画好了!
五,总结与选择
  罗罗嗦嗦了大半天,好像就提到了ECharts和d3.js两种解决方案,连我自己都觉得是百度的托了。其实是因为这两个方案已经是这个领域的佼佼者了,属于非常典型的数据可视化工具代表,掌握了这两种基本上就能应付绝大多数数据可视化的做图工作了。其他的互联网数据可视化工具也非常多,套路也大同小异,网上随便搜索下就能出来“数据可视化最佳XX个工具”,在此就不赘述了。
  ECharts采用canvas图形标准,得益于硬件加速数万个数据点带起来丝毫没压力,缺点是位图格式不能无损放大;ECharts上手非常容易,百度专门提供在线的网站调试ECharts图表,满意了把代码拷贝走就行。ECharts非常适合大规模常规性数据可视化开发,比如网站的后台数据显示,各类ERP系统的数据显示等。
  d3.js采用svg图形标准,和CSS水乳交融美化很方便,支持无损放大,缺点是绑定数据太多的时候浏览器渲染dom的效率就变地下。当然d3.js也能用canvas,不过这都是非主流的实现方式了。d3.js需要从头开始实现图表每个元素,麻烦的同时也提供了定制空间,是创作复杂的个性化数据可视作品的最佳选择。

  下面现丑一个d3.js擅长的、ECharts不容易实现的数据可视化案例,欢迎点击:http://guoweish.github.io/work-tree.html

大数据可视化系列一:可视化工具选择相关推荐

  1. 数据可视化系列-06数据分析工具QuickBI

    文章目录 数据可视化系列-06数据分析工具QuickBI 一文介绍QuickBI Quick BI 的基本对象 快速入门 Quick BI产品架构界面说明 菜单栏 我的看板 工作台首页 通过仪表板分析 ...

  2. 基于python大数据爬取房价数据可视化

    基于python大数据爬取房价数据可视化

  3. 大数据算法系列——布隆过滤器

    大数据算法系列--布隆过滤器 一.简介 Bloom filter介绍 Bloom Filter(BF)是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个集合,并能判断一个元素是否属于这个集 ...

  4. 大数据学习系列----大数据项目的思考

    2019独角兽企业重金招聘Python工程师标准>>> 最近做了一个大数据可视化的项目,目前阶段还仅仅对我们关心的指标做一些年度,季度,月度维度的汇总和展示,提供了简单的纵向横向的指 ...

  5. 电信行业大数据(大数据平台系列)

    电信行业大数据(大数据平台系列) 电信行业拥有体量巨大的数据资源,单个运营商的手机用户每天产生的话单记录.信令数据.上网日志数据可以达到PB级规模.通过大数据技术,运营商可以提升数据处理能力,聚合海量 ...

  6. 大数据学习系列:Hadoop3.0苦命学习(五)

    传送门: 大数据学习系列:Hadoop3.0苦命学习(一) 大数据学习系列:Hadoop3.0苦命学习(二) 大数据学习系列:Hadoop3.0苦命学习(三) 大数据学习系列:Hadoop3.0苦命学 ...

  7. 灾害预警实时监控中心(大数据平台系列)

    灾害预警实时监控中心(大数据平台系列) 大数据对雷暴雨.洪水.地震.海啸等天灾的救援发挥了重要的作用,为科学救灾提供智能化决策.大数据平台抓取气象局.地震局的海量气象数据.卫星云图变化数据,构建气象运 ...

  8. 手机移动互联网营销(大数据平台系列)

    手机移动互联网营销(大数据平台系列) 移动互联网与大数据时代,基于手机App与大数据的营销模式不可或缺,是企业商家与用户拉近距离的桥梁,可以融入人们生活的方方面面.基于手机App与大数据的营销模式,是 ...

  9. 【“工业大数据预测”系列】——第2篇:异常数据处理

    文章目录 前言 1 数据来源 2 数据预处理 2.1 无效数据处理 2.2 异常数据处理 3 数据预处理完整代码 前言   Hi,久等了,这里是工业大数据预测系列的第二篇.   前面我们提到,工业大数 ...

  10. 大数据学习系列之七 ----- Hadoop+Spark+Zookeeper+HBase+Hive集群搭建 图文详解

    引言 在之前的大数据学习系列中,搭建了Hadoop+Spark+HBase+Hive 环境以及一些测试.其实要说的话,我开始学习大数据的时候,搭建的就是集群,并不是单机模式和伪分布式.至于为什么先写单 ...

最新文章

  1. haproxy 反向代理 tomcat (https、负载均衡)
  2. mysql 5.7 1055_mysql 5.7报1055错误的解决方法
  3. 功能受限_比亚迪秦80变速器功能受限故障检修
  4. 网站文章要求图文并茂,图片要怎样做好优化工作呢?
  5. boost::disjoint_sets_with_storage用法的测试程序
  6. 四种方式下创建线程启动的区别
  7. MAX3222/MAX3232/ MAX3237/MAX3241/串口通信中文_技术文档
  8. 随机/线性颜色生成器(RandomColorGenerator)
  9. Bootstrap条纹进度条
  10. servlet mysql insert_servlet+mybatis 实现mysql的增删改查实例
  11. oracle 返回 xml解析,Oracle xmltable解析返回LPX-00209(Oracle xmltable parsing return LPX-00209)...
  12. Nav2极简笔记03-启动文件launch
  13. 支付宝企业转账到个人账户
  14. 设备管理器中的usb打印支持有个叹号是什么意思,如何解决?
  15. 无限存储空间的蓝奏网盘你还不用?使用Python,直接获取直链!Python使用Requests和BS4实现蓝奏云直链解析与下载
  16. 7、KSQL刨根问底和实战操作教程
  17. python 获取百度地图上北京地铁的数据,然后excel导出
  18. 独立站运营指南:引流工具和引流方法都有哪些?
  19. 北京联通dns服务器位置,ipv6北京联通dns服务器地址
  20. 2.ZooKeeper客户端Curator「第三章 ZooKeeper Java客户端」「架构之路ZooKeeper理论和实战」

热门文章

  1. HackRF One—GSM嗅探
  2. 华为MDC-300计算平台
  3. Flutter Android app 修改启动背景颜色和logo——筑梦之路
  4. mysql timestamp year_MySQL 的日期类型有5个,分别是: date、time、year、datetime、timestamp。...
  5. 3、Explan执行计划
  6. python endswith函数_Python中的startswith和endswith函数使用实例
  7. tpcc-mysql安装_tpcc-mysql 安装使用
  8. Fedora linux重启网卡服务的命令
  9. 用ViewFlipper可以实现图片切换(一)
  10. App怎么上架到苹果商店(app store)?上架app的流程。