真实的数据可视化应该是这样的

  • 2015-08-23 23:01:45
  • 关键字: 数据可视化 组态

  数据可视化从200多年前基本饼图发明时的形成至今已走过漫长的历程。如今,由于数据大潮的到来和人们关于数据使用的讨论,一种新的设计语言正在兴起,它可以优美地将大数据中的繁杂简化成既美观又富有意义的可视化图形。

  大部分的数据可视化的教程, 都会让你轻松地从一个原始数据集开始。 无论你是学习基本的柱状图还是力导向的网络图, 你的数据都是干净的,经过整理的数据。 这些完美的JSON或者CSV文件就像电视里的厨艺节目中的灶台那样干净整洁。而实际上, 当你在处理现实中的真正的数据是, 你80%的时间得用来搜寻, 获取, 载入, 清洗以及转换你的数据。

  这样的过程, 有时候可以用自动化的工具来完成。 不过, 差不多任何需要针对两个以上的数据集进行清洗的工作总会需要或多或少的人工的工作。有很多工具能够把XLS文件转化为XML的格式或者把时间戳转换为其他日期格式。但是, 要想把一个公司的内部使用的销售类型与竞争对手进行比对, 或者对输入错误进行检查, 或者对不同的Encoding或者OCR产生出来的文字进行检查时, 就只能靠手工来处理了。

  和柱状图比起来, 气泡图可以在同样的空间表现更多地数据, 饼图可以更清晰地表现整体和局部的关系, 树状图能够更好地表现分层的结构。然而, 这些图在简单明了方面都无法与柱状图相比。在组态概念出现之前,要实现某一任务,都是通过编写程序(如使用BASIC,C,FORTRAN等)来实现的。编写程序不但工作量大、周期长,而且容易犯错误,不能保证工期。组态软件的出现,解决了这个问题。对于过去需要几个月的工作,通过组态几天就可以完成。 

  在考虑数据可视化设计方案时, 我们要问自己的第一个问题就是:“这个方案比柱状图好吗?” 如果你需要在一个单一维度上可视化一个可量化的数据集,那么很少有别的方式能比得上柱状图。 类似的, 时间序列最好表现为线状图, 而散点图一般用来表现两个线性度量的相关性。 在数据可视化设计中, 使用这些从18世纪以来就一直在使用的图风险最低。 而柱状图对于进行数据比较的可视化来说是最佳方式。 因为我们人眼最习惯的比较方式就是将两个东西并排比较。

  可视化的设计者经常希望能够在最终设计上加上动画。 动画是一种连接数据和变化趋势的非常有用的工具。 不过动画也常常会导致对你的数据的错误理解。 你需要对它会如何影响你的最终效果进行评估, 而不是简单地在最后加上动画效果。 动画最适合表现的, 是揭示数据如何在不同状态下组合在一起, 如何随时间变化或者是如何相互影响的等场合,组态软件完全可以实现。

  一般的设计原则是, 动画要简单, 可预测并且可以重新播放。 让用户能够多次播放动画, 可以让他们看到动画元素从哪里开始到哪里停止。 要避免不同元素在移动中互相覆盖, 不要让元素的运动不可预测。 对于复杂的动画, 研究表明, 可以把动画分解为几个不同的阶段,在每个阶段暂停一会给用户一些时间来体会。 这样有助于提高用户的理解。

  数据可视化可以产生一些分析结果, 不过需要指出的是, 可视化是一个辅助分析的工具, 而不是数据分析的替代, 它也不是统计的替代: 你的图形可能揭示了一些数据差异或者数据的相关性。 不过, 要得出存在这些差异和相关性的可靠结论, 还需要运用统计的方法。

  现在大量的可视化编程库和教程使得普通的人员在进行基于Web的可视化中, 也可以设计出高质量的可视化产品。 然而, 要想真正设计一个能够提供深入见解, 或者能够清楚表达的可视化产品, 除了编程之外, 还需要很多其他的技能。