可视化框架设计-序

数据可视化与G2

目录

  • 目的
  • 什么是数据可视化
  • 数据可视化的阶段
  • G2的定位和规划

目的

从事数据可视化有2,3年的时间了,发现大多数人对数据可视化的认知就是绘制图表。因此我想写一些可视化框架设计的文章,这些文章,提供了一整套可视化框架的设计思路和实现细节,希望能让大家对可视化有更多的理解,更好的在业务中使用可视化。

什么是数据可视化

数据可视化使用数据和图形技术将信息从数据空间映射到视觉空间,是一门跨越了计算机图形学、数据科学、自然科学和人机交互等领域的交叉学科。

上面的领域模型过于复杂,我们在数据可视化的工作中更关注数据和图形,由此对数据可视化的领域模型进行了简化:

  • 数据:聚焦于解决数据的采集,清理,预处理,分析,挖掘。
  • 图形:聚焦于解决对光学图像进行接收、提取信息、加工变换、模式识别及存储显示。
  • 可视化:聚焦于解决将数据转换成图形,并进行交互处理

当前掌握的知识和一个数据可视化工作者需要掌握的知识领域:

 

数据可视化阶段

从市场上的数据可视化工具来看,数据可视化分为这么几个阶段:

  • 数据统计图表化
  • 数据结果展示化
  • 数据分析过程可视化
  • VR/AR 阶段的虚拟现实的可视化

数据统计图表化


这个阶段是使用传统的统计性图表来展示数据,其中的代表作是highcharts,echarts 等图表库,这些框架的优点在于:

  • 最成熟的可视化工具,包含的图表都是常见图表,易于用户理解和开发人员使用
  • 开发成本低,对图形技术和数据知识的要求不高

缺点同样明显:

  • 配置项复杂、扩展性差、图表表现单一
  • 适用范围窄,对树状、网状结构支持差;数据维度和数据量的展示都受限

数据结果展示化工具

随着数据业务对可视化需求的要求越来越高,可视化的范围已经不仅仅限制于统计性图表,业务上需要显示更多维度的数据、更多样的图形展示数据。这就需要能够业务方根据自己的需求定制图表,这个阶段的工具主要有 d3.js,rapheal等框架,这些框架提供了更加细力度的图形工具,更多的图形算法,这类框架的优点:

  • 功能强大、交互性强、适用范围广
  • 集成了大量的图形算法、可视化算法,降低复杂的图表的成本
  • 社区力量强大、大量示例

同样存在一些共性的问题:

  • 需要细粒度的操作图形,学习、开发成本高
  • 个性化需求多,复用性差

数据分析可视化工具

前面的工具都是基于先验模型,已与检测已知模式和规律,对复杂、异构、大尺度数据的自动处理经常会失效,所以需要对数据的分析过程进行可视化,更好的探索规律、查找问题。数据分析的可视化工具,目前市场上做的最好的是tableau、R语言中的ggplot2等,这些产品优点:

  • 跟数据分析密切关联,集成了大量数据相关的算法
  • 可以对数据分析的中间环节进行可视化展示

缺点:

  • 专业度强,不宜入门

VR/AR 阶段的虚拟现实的可视化

正在探索中

G2

当前支持业务的特点,决定了我们数据数据可视化的工作内容:

  • 基本的统计性图表依然占可视化的很大比例,但是开发受困于各种图表库的不完整性、数据的输入输出不一致、语法的繁琐,导致体验差,开发效率低。
  • 越来越多的业务开始有更多维度的数据展示需求,传统的统计性图表已经不能满足需求,越来越多的可视化定制需求
  • 在线的数据分析业务开始兴起,传统的PC版工具不能满足需求

我们2年前开始了G2的开发,G2的定位:

  • 满足现有的统计性图表需求,提供一套极为简单的图形语法,完成数据从数据空间映射到图形空间。
  • 提供各种图形的扩展语法,支持异构复杂的数据类型,是一套强大的可视化工具
  • 探索在数据技术在可视化上的应用,以在线数据分析为入口,提供数据分析的可视化能力

G2的roadmap

G2已经完成了 1.0,1.1,1.2的开发,前几个版本完成了以下内容:

整体的roadMap:

  • antV 是一套我们在支持可视化业务中的实践规范,用于帮助用户在合适的场景使用合适的图表
  • G 绘图库,是我们数据可视化的绘图底层,需要在3D、动画、交互上做扩展
  • G2 1.x已经开发完毕,实现了一套简单易用的图形化语法,满足统计图表的需求。
  • G2 2.x正在开发中,希望能够用数据和图形映射的方式,屏蔽图形绘制的细节,使用户能够定制个性化的可视化需求,D3能绘制的图形,都应该能够使用简单的语法实现。
  • G2 3.x的功能,之前仅仅尝试过简单的回归、拟合等数据算法,后期需要跟数据部门结合,构造在线版的数据分析工具。

结语

几个网站地址:

后续我们会发布一系列可视化框架设计方面的文章,讲述G2的整体设计思路的和各种语法元素的设计细节,欢迎大家参与我们的可视化工作。

时间: 2024-10-10 04:16:46

可视化框架设计-序的相关文章

可视化框架设计-图表类型

目录 图形标记和图表类型 图表类型(Geom)和图形形状 如何设计图形形状(Shape) 更多 图形标记和图表类型 数据可视化的核心在于可视化编码,而可视化编码由图形标记和视觉通道组成,视觉通道在前面的章节中已经讲解过,本章的内容是介绍图形标记,在可视化设计中我们将常见的图形标记定义成图表类型. 根据图形标记可以代表的数据维度来划分,图形标记分为: 零维,点是常见的零维图形标记,点仅有位置信息 一维,常见的一维图形标记有线 二维,二维平面 三维,常见的立方体.圆柱体都是三维的图形标记 图形标记自

可视化框架设计-视觉通道

视觉通道 视觉通道简介 数据如何映射到视觉通道 G2视觉通道的设计 更多 视觉通道简介 数据可视化的核心内容是可视化编码,是将数据信息映射成可视化元素的技术.可视化编码由两部分组成:几何标记(图形元素)和视觉通道. 几何标记:可视化中标记通常是一些几何图形元素,例如:点.线.面.体 视觉通道:用于控制几何标记的展示特性,包括标记的位置.大小.形状.方向.色调.饱和度.亮度等 视觉通道的类型 人类对视觉通道的识别有两种基本的感知模式.第一种感知模式得到的信息是关于对象本身的特征和位置等,对应视觉通

框架设计总结

框架设计总结 温昱老师的<一线架构师实现指南>读完好几天了,本书很多大牛都有推荐,自己从头到底一字不漏的看了,很多关键的方法,做了标记,看了多次,是一本介绍构架设计方面很好的书,准备把它做为工具书,在开始中用好其中的方法. 大学学的软件工程,软件设计要从需求分析.可行性分析.概要设计.软件设计.软件开发和测试,说的是一个大的过程,具体到针对一个项目时还是会感觉无从下手:本书提供的ADMEMS方法体系,把这一过程形成方法体系,让框架设计的操作性更强,四个核心主张: 1)       方法体系是大

《开源框架那些事儿22》:UI框架设计实战

UI是User Interface的缩写,通常被认为是MVC中View的部分,作用是提供跟人机交互的可视化操作界面.MVC中Model提供内容给UI进行渲染,用户通过UI框架产生响应,一般而言会由控制层调用业务逻辑进行处理,并把处理结果以Model方式返回View,再次渲染.UI框架的大致过程就是如此,按实现方式可以分为RIA和瘦客户端方式,目前基于B/S的瘦客户端方式比较流行.UI框架套路上很简单,但是想要做好可就不容易了.目前基于MVC的框架灿若繁星,不客气的说是个软件公司就有自己的技术框架

基于Extjs的web表单设计器 第六节——界面框架设计

基于Extjs的web表单设计器 基于Extjs的web表单设计器 第一节 基于Extjs的web表单设计器 第二节——表单控件设计 基于Extjs的web表单设计器 第三节——控件拖放 基于Extjs的web表单设计器 第四节——控件拖放 基于Extjs的web表单设计器 第五节——数据库设计 基于Extjs的web表单设计器 第六节——界面框架设计 基于Extjs的web表单设计器 第七节——取数公式设计 基于Extjs的web表单设计器 第八节——表单引擎设计 这一节我给大家介绍一下表单设

Android通用框架设计与完整电商APP开发

第1章 课程介绍及APP效果展示(Java版)本章概述了本课程大家能学到什么,老师如何讲解,为什么这么讲解,并介绍了框架的整体架构设计与模块分解,最后展示了用自己设计的框架开发出来的完整电商APP的效果图(服务端API快速搭建教程:http://www.imooc.com/article/19001) ...1-1 课程导学1-2 项目架构设计与模块分解 第2章 项目初始化本章将从零搭建一个空项目,实践项目搭建的过程,并额外教大家搭建一个基于Go语言的Web版Git服务器,实现代码托管的自举.(

静态网页框架设计首次体验(文章改)

根据教材与上网成功解决了Tomcat与Myeclipse的安装,同时熟悉了Java web创建项目到部署运行整个过程.今天起正式开始学习有关Java web的编程部分.Java web静态网页(HTML网页)的标记含义.基本语法的介绍到框架设计基本模板与案例,今天的学习的内容,让网页编程有了一个初步的框架.结合自身所在协会的情况,计划制作一个关于协会的网页,已有初步想法,望通过学习不断完善和修改协会网站.根据今天所学,并参考书本30页框架设计案例对网页进行初步搭建. 具体代码如下 TW.jsp:

Linux设备驱动框架设计

引子 Linux操作系统的一大优势就是支持数以万计的芯片设备,大大小小的芯片厂商工程师都在积极地向Linux kernel提交设备驱动代码.能让这个目标得以实现,这背后隐藏着一个看不见的技术优势:Linux内核提供了一套易于扩展和维护的设备驱动框架.Linux内核本身提供一套设备驱动模型,此模型提供了Linux内核对设备的一般性抽象描述,包括设备的电源管理.对象生命周期管理.用户空间呈现等等.在设备模型的帮助下,设备驱动开发工程师从设备的一般性抽象中解脱出来.但是每个设备的具体功能实现还需要大量

SharePoint 2013 可视化工作流设计图解

SharePoint 2013 可视化工作流设计图解 地点:西宁: SharePoint 2013 加BI 项目. 平台环境:SharePoint2013   系统环境windows server2012: 开发工具:SharePoint designer 2013   前提:服务器安装完成Visio 2013 旗舰版: 使用账户有权限 1,打开 SPD2013 --打开SharePoint 2013 网站--在导航菜单里找到 List Workflow 如下图:本实例 创建文档工作流. 2,单