目录
1、数据科学的产业升级
随着科技的发展,产业升级成功的一个重要标志是:工作任务能够“螺丝钉化”,而在这个过程中,需要把一个项目中的任务合理地拆分成耦合程度最小的单元。比如数据科学,如果有一天在各行业数据采集、处理、可视化、分析、安全等每一项任务能够由专门的小组来完成(每一项工作将做得更出色),而不是由一个人把这些工作都做了的话,那么数据科学领域的产业升级可以说是成功的。
ofter今天以数据可视化为例,来讲讲如何把数据可视“螺丝钉化”,未来我们还可以衍生到数据科学。
2、数据可视化的痛点
目前,有2类人正在或迫切需要学习和使用数据可视化。
2.1 数据分析师
分析师通常都有量化分析的背景,但很少受过设计方面的专业训练,虽然能够胜任数据分析的其他环节(获取数据、清洗整理数据、分析数据、建立模型),但在最终的展示沟通上力不从心,而展示恰恰是整个数据分析流程中最终受众能够接触到的唯一环节。因此,对于分析师来说,只需要找一个易用的图表工具。
2.2 想提升的非技术人员
无论是销售、产品、财务、采购,还是其他岗位,其实数据可视化的迫切性并不比分析师低。从以下例子可以看出,他们需要的是易用的数据工具和图表工具。
例子1:ofter几年前做过业务,每个月需要向总经理汇报业务情况,当时采用的是excel汇总统计的方式,站在个人角度看,最大的痛点是数据部分,因为我们都是每个月各销售维护自己的客户数据,在excel上维护经常会出现打架的问题,每次做图表时我还要去汇总这些数据,经过那么多人的协同作业,效率反而低下,也容易出错。通常是大家经过8个小时的汇总、核对数据,最后得到了如下图的2张图表,然后在销售会议上汇报一下就扔回收站了。
3、数据可视如何简单化
数据可视化是一项涉及数据和图表的工作,ofter将动态数据可视简单化过程主要分为3个阶段。
(1)数据+图表:全部代码;(完全自定义)
(2)数据:代码 + 图表:无代码;数据:无代码 + 图表:代码;(图表前端编写代码,可以自定义图表类型和样式)
(3)数据+图表:全部无代码。(数据、图表类型、样式等需提前封装)
3.1 数据部分
ofter认为目前市面上的平台更多注重了图表功能的开放,而数据部分功能很鸡肋(主要指付费平台),他们提供了excel上传、api接口、数据库连接、静态json数据集之类获取数据的功能。
对于第(2)类大多数非技术人员来说,api接口、连接数据库、静态json数据集是需要付出很多时间和精力才能使用的功能,而这个excel上传只能一次性使用,无法线上协同修改数据,图表中的数据也是无法动态和实时更新。当然他们的目标群体本来就不是普通大众。
3.1.1 代码需求
一般企业/组织的数据都是结构化和标准化的,因此采用关系型数据库SQL比较普遍,需要在SQL中先建立数据库表和列名,表之间的关系也需要提前定义,这就需要比较好的逻辑能力。
然后在编译工具中编写从数据库取数的代码,将数据用于图表的展现。
from pyecharts import options as opts
from pyecharts.charts import Bar,Page
import pymysql
from operator import itemgetter
def bar(cos): #柱状图
costomer = list(map(itemgetter(0), cos))
quantity = list(map(itemgetter(1), cos))
c = (
Bar(init_opts=opts.InitOpts(bg_color="white"))
.add_xaxis(costomer)
.add_yaxis("订单数量", quantity)
.set_series_opts(label_opts=opts.LabelOpts(is_show=False))
.set_global_opts(
title_opts=opts.TitleOpts("客户订单数量"),
datazoom_opts=opts.DataZoomO