大数据专场学习资料七第四届字节跳动青训营第四届字节跳动青训营讲师非常用心给大家整理了课前中后的学习内容,同学们

在前面的课程中我们讲了很多技术层面的知识,而这些技术是如何服务于企业做数据分析的,同学们缺少一些场景来直观地感受。本课程的目的就是让同学们直观且系统地看一下企业是如何构建各种数据分析工具,以及分析人员是如何使用这些工具来做数据分析的。

在企业竞争越来越激烈,获客成本越来越高的背景下,如何高效地优化产品和精细化投放运营是当前企业竞争的关键,而用户数据分析正是我们保持此竞争力的重要手段(难道还有别的手段?有,靠抄袭,靠砸钱),我们通过数据来驱动用户增长、降低成本和提高收益。

当下互联网的行情不太好,大家也知道,企业们也在“勒紧裤腰带过日子“,盲目扩张、砸钱抢市场的情况在当下会收敛很多。

这里我仅指互联网行业,我的理解就是一些有经验的人,体系化的把这些做事的手段和思考进行抽象整合后,沉淀下来作为理论,而“后人”按照这个“套路”来执行就好了。学习方法论,能大大减少你去探索的成本。但是在这个互联网飞速发展的时期,这个套路有可能过时,所以大家需要保持敏锐,不要过于迷信某些方法论。

在真正进入到具体的分析案例之前,我们先来整体看一下,数据分析有哪些环节。

这里包含4个部分。数据源、分析工具、可视化以及贯穿全程的指标体系。

首先我们先看一下数据源,没有数据,我们的数据分析就无从谈起。数据源包括很多种,我们最常见的是埋点和业务DB中的数据以及二次加工的如统计和挖掘出的数据。

可视化这一块,其实并不是独立的部分,很多分析工具里集成了可视化的能力,但是为了方便同学们理解,我们单独拎出来这一块来讲解。

而指标体系是我们数据分析的脉络,我们做个各种分析其实都会围绕着指标体系来做。指标体系会在真正开始建设之前就进行规划,并在业务发展过程中不断完善。

接下来我们分别介绍一下各个环节。

\

一句话介绍指标体系:结合业务战略目标和业务场景,系统化梳理构建的指标集合。我们构建的指标集合通常是分级的,以满足不同级别的人的数据使用需求。

我们以手游业务为例看一下指标体系是什么,当然这个例子不全,仅作为示意用。

那我们搭建指标体系有什么用途呢?这里我列了一些,大家可以先行体会一下:

近两年,企业们为了能更前置地促进业务发展,又引申出一个叫“北极星指标”(也叫第一关键指标)的概念。通过这个(也有可能不止1个)指标的牵引,来指引各部门抓住重心。

业务DB数据大家会比较熟悉,常见的是一些关系型数据,我们不展开讲了。这里我们详细讲一下埋点数据。

埋点数据是什么呢?它是指上报的记录着触发原因和状态信息的日志数据。按照上报方来看,可以划分为“服务端埋点”和“客户端埋点”。按照上报形式,可以划分为“代码埋点”、“可视化全埋点”。企业最常用的是代码埋点。

{"event_name":"game_purchase","event_time":1641776400,"user_info":{"user_id":"1111","role_id":"2222","device_id":"3333"},"params":{"server_id":1001,"item_id":123,"amount":50000,"platform":"game_mall","pay_type":"xxpay"},"location_info":{"zone_area":"Asia/Shanghai"},"headers":{"device_os":"android","app_version":"12.3.4","channel":"xxx","ip":"x.x.x.x","sys_language":"zh-CN","app_language":"zh-CN"}}这里我们可以看到,除了上面那些参数外,还会上报很多其他属性,这些属性是我们极其常用的,所以企业内的sdk默认会采集上报。

了解了埋点的格式之后,那我们需要在什么时候上报呢?这个就跟具体的业务场景有关系了。你要分析什么数据就在对应的时机采集埋点数据。

我们先整体看一下各工具的对比情况。同学内简单了解下即可。

表的基本构成:表名、表字段、表字段类型等。

SQL:结构化查询语言,用来操作表的语言。细分为DDL(数据定义语言)和DML(数据操纵语言)等。

在工作中,这些表的建模和查询sql是需要做精心优化的,以提升查询性能并减少资源浪费。

思考题:这里举个简单的例子,大家想一下sql怎么写。

表字段:os,device_id,province,login_time,log_date

查询:筛选最近30天和AB省份,统计各个log_date、os的设备活跃数

回顾了sql之后,我们就要进一步引入指标和维度的概念,这个在可视化的时候需要用到。

指标是数据的量化统计,维度是数据分组的方式。

那大家思考一下:

行为分析工具包括很多模型,我们把用户日常最高频使用的功能进行了固化,用户只需在界面配置自己要分析的埋点、属性筛选和分组项,即可在几秒内查询出数据结果。由于篇幅有限,这里我们仅介绍下企业最常用的事件分析。

我们可以看到,左侧是查询配置区,右侧是展示区。左侧我们可以配置指标、筛选项和分组项,分别对应了sql的select、where、groupby。这个比较好理解。

先看一下常见的图表样式:

我们可以看到图表的样式很多,但也需要注意,选择什么样的样式是看怎么方便你去做数据洞察,不要仅为了花里胡哨而去使用这些图表。

思考题:除了这些,你还能想到其他哪些图表类型。

一个完整的数据分析流程是这样的:

暂时无法在飞书文档外展示此内容

接下来我们以企业应用经营过程中用户的生命周期为视角,看下可以做数据分析的环节。生命周期我们此处使用AARRR模型更方便大家理解。

数据如下:

一些指标概念:

激活CPA:平均获取1个新增设备花费的成本

新增CPA:平均获取1个新增账号花费的成本

次留:当天新增的用户有少比例在次日又活跃了

3留:当天新增的用户有少比例在第3日又活跃了

2日LTV:平均每个用户前两天带来的收入

2日ROI:2日LTV/新增CPA

其他指标同理

通过这份数据,大家觉得应该优先加大哪个素材的推广力度呢?

这是一份漏斗转化数据。

如果某一步出现很低的转化率,你有什么优化建议吗?

这是一份游戏各玩法参与率的数据,你能得出什么结论?

总结:

上半节课我们简单讲了下企业是如何使用各种分析工具来分析数据的,并一起看了一些案例,希望大家能有所收获。接下来我们看一下机器学习在企业实际应用场景中的实践。

思考题:

打开你手机的一款应用,你觉得哪些环节可以做数据分析,你觉得可能存在哪些优化点?

下半节课程主要分为四个方面:

课前部分给出一些机器学习和大数据的基础知识点,作为课堂内容的前置基础,请同学们按需提前自行学习;

课中部分对课堂内容作一些细节上的补充,旨在帮助同学们加深对课题的理解;

课后部分作为重点总结,帮助同学们梳理复习本课程涵盖的核心内容。

机器学习并不是近年来才出现的领域。早在上个世纪50年代,来自IBM的ArthurSamuel就给出了机器学习最早的定义:

举个上世纪基于机器学习开发的产品案例——垃圾邮件过滤系统。这种系统有两种开发思路:

简而言之,机器学习是搭建一个能够自主从数据(或经验)中学习潜在规则的系统。在合适的情景下,尤其是解决复杂问题时,它能有效简化系统和代码,并大大降低后期策略迭代与维护的成本。

机器学习有非常多的种类及相应的算法,主要可以分成三大类:

上述的系统类型和具体方法并不是互相独立的,可以根据实际问题进行组合。

现实事物中具备着各种各样的信息,比如一张图片有着色彩、纹理、边界等各类型的信息数据。而特征工程要做的,就是将这些“原始数据”进行处理,从中构建出在此问题下,能代表该事物属性的“特征”。

数据是什么样的形式

结构化数据:如一些以表格形式进行存储的数据

非结构化数据:就是一堆数据,类似于文本、报文、日志之类的

定量数据:指的是一些数值,用于衡量某件东西的数量

定性数据:指的是一些类别,用于描述某件东西的性质

数据清洗(datacleaning)的主要思想是通过填补缺失值、光滑噪声数据,平滑或删除离群点,并解决数据的不一致性来“清理“数据。如果用户认为数据是脏乱的,他们不太会相信基于这些数据的挖掘结果,即输出的结果是不可靠的。

数据集成将多个数据源中的数据结合成存放在一个一致的数据存储,如数据仓库中。这些源可能包括多个数据库或一般文件。

数据归约技术可以用来得到数据集的归约表示,它小得多,但仍接近地保持原数据的完整性。这样,在归约后的数据集上挖掘将更有效,并产生相同(或几乎相同)的分析结果。一般有如下策略:

数据变换包括对数据进行规范化,离散化,稀疏化处理,达到适用于挖掘的目的。

特征构造的操作分为两类:“聚合”和“转换”。

......

.......

在实际项目中,可能会有大量的特征可使用,有的特征携带的信息丰富,有的特征携带的信息有重叠,有的特征则属于无关特征,如果所有特征不经筛选地全部作为训练特征,经常会出现维度灾难问题,甚至会降低模型的准确性。因此,需要进行特征筛选,排除无效/冗余的特征,把有用的特征挑选出来作为模型的训练数据。

先进行特征选择,然后去训练学习器,所以特征选择的过程与学习器无关。相当于先对特征进行过滤操作,然后用特征子集来训练分类器。主要思想:对每一维特征“打分”,即给每一维的特征赋予权重,这样的权重就代表着该特征的重要性,然后依据权重排序。

直接把最后要使用的分类器作为特征选择的评价函数,对于特定的分类器选择最优的特征子集。主要思想:将子集的选择看作是一个搜索寻优问题,生成不同的组合,对组合进行评价,再与其他的组合进行比较。这样就将子集的选择看作是一个优化问题。

将特征选择嵌入到模型训练当中,其训练可能是相同的模型,但是特征选择完成后,还能给予特征选择完成的特征和模型训练出的超参数,再次训练优化。主要思想:在模型既定的情况下学习出对提高模型准确性最好的特征。也就是在确定模型的过程中,挑选出那些对模型的训练有重要意义的特征。

embedding,即嵌入,起先源自于NLP领域,称为**「词嵌入(wordembedding)」**,主要是利用背景信息构建词汇的分布式表示,最终可以可以得到一种词的向量化表达,即用一个抽象的稠密向量来表征一个词。

那么embedding其实就是一种稠密向量的表示形式。在embedding大行其道之前oneHot才是最靓的仔。如果和我们比较熟悉的oneHot对比起来理解,顿时会发现embedding这个玄里玄乎的概念,实际上soeasy。直观上看embedding相当于是对oneHot做了平滑,而oneHot相当于是对embedding做了maxpooling。

解释性理解

比如RGB(三原色,red,green,blue)任何颜色都可以用一个RGB向量来表示,其每一维度都有明确的物理含义(和一个具体的物理量相对应)。当然RGB这个例子比较特殊,和我们一般意义的embedding,还不一样,因为RGB的特殊性就在,他的每一维度都是事先规定好的,所以解释性很强。而一般意义的embedding则是神经网络倒数第二层的参数权重,只具有整体意义和相对意义,不具备局部意义和绝对含义,这与embedding的产生过程有关,任何embedding一开始都是一个随机数,然后随着优化算法,不断迭代更新,最后网络收敛停止迭代的时候,网络各个层的参数就相对固化,得到隐层权重表(此时就相当于得到了我们想要的embedding),然后再通过查表可以单独查看每个元素的embedding。

聚类算法是机器学习中涉及对数据进行分组的一种算法。在给定的数据集中,我们可以通过聚类算法将其分成一些不同的组。在理论上,相同的组的数据之间有相似的属性或者是特征,不同组数据之间的属性或者特征相差就会比较大。聚类算法是一种非监督学习算法,并且作为一种常用的数据分析算法在很多领域上得到应用。

这些常用聚类方法所依赖的常用聚类特征较为偏向统计学类特征。

常用聚类特征:

聚类所使用的统计特征无法反应用户的行为细节。因此,我们也就需要比统计特征更具有区分客户特性的特征。

常用聚类方法各自的优点和缺点:

K-means聚类算法可能是大家最为熟悉的聚类算法。它在许多的工业级数据科学和机器学习课程中都有被讲解。并且容易理解和实现相应功能的代码。

k-means聚类

k-means的优点是速度非常快,因为我们真正要做的就是计算点和组中心之间的距离;计算量少!因此,它具有线性复杂性o(n)。

另一方面,k-means有两个缺点。首先,您必须先确定聚类的簇数量。理想情况下,对于一个聚类算法,我们希望它能帮我们解决这些问题,因为它的目的是从数据中获得一些洞察力。k-means也从随机选择聚类中心开始,因此它可能在算法的不同运行中产生不同的聚类结果。因此,结果可能不可重复,缺乏一致性。

一个基于聚类的用户画像分析工具,以对用户群体进行标注及定位,(1)帮助运营分析师PM等洞察群体用户在站内的消费、投稿内容生态情况;(2)研究用户与内容的关系和演变,理解业务增长的变化,制定用户与内容的增长策略,以使得用户分析更简便、更灵活、更快获取数据背后所隐藏的价值。

本手册旨在帮助学员对数据可视化的概念和原理有一个整体的认知,辅助学员课前预习生疏概念,课中理解讲课思路及重点内容,课后进行重点回顾以及扩展阅读。

本手册可以作为学生学习数据可视化的“学习指南”,按照手册所列内容,结合扩展资料进行系统的学习和实践。

本手册没有讨论更为前沿的可视化课题,比如智能可视化。

课前需要学员尽可能对可视化有一个感性的认知,可以重点了解一下数据可视化发展简史,同时对不同历史阶段的一些经典可视化作品做扩展阅读,增加兴趣。

另外一些演示工具可以提前体验一下:

主要内容(手册内容在涵盖课程ppt内容的同时做了大量细节补充和扩展,章节做了重新编排):

Visualizationisanytechniqueforcreatingimages,diagrams,oranimationstocommunicateamessage

根据这个定义,我们可以理解为通过视觉元素(图像,图表,动画等等)来进行信息交流的方式都可以称之为可视化。比如下面的梵高的绘画,奥运会的ICon设计,一个具体的桑吉图都属于可视化。

(星夜-文森特·梵高-1889)

这里应该还有一个更大的范畴定义,不仅局限于视觉,扩展到人类的整个感知系统。通过听觉、触觉或者味觉也是可以进行信息呈现和交流的。针对盲人,也是可以设计优秀的可视化作品的。

Anythingthatconvertsdataintoavisualrepresentation(likecharts,graphs,maps,sometimesevenjusttables)

“数据可视化”和“可视化”的定义很相似,只是增加了一个关键词——“数据”。

下面是几个典型的应用场景。

直观展示

一图胜千言。数据可视化最直观的作用就是将数据要阐述的内容直观的展现出来,比如下面著名的“拿破仑东征图”。

CharlesJosephMinard,MapofNapolean'sRussianCampaignof1812

数据探索

促进沟通与交流

随着可视化的发展,人们使用更多的应用形式来传递信息,比如仪表盘,数据大屏等。

一个可视化作品的诞生,要经历一系列流程,我们将其抽象成如下图所示的四个大的步骤。

第一步:数据处理(AbstractData)只有满足特定结构的数据才能做对应的可视化展现,而且为了达到好的可视化效果也需要对数据进行清洗、转换等操作。

第二步:可视化设计与表达(VisualizationDesign)根据数据特征选择合适的展现模式,在此基础上通过合理的使用视觉编码,来定义最终的可视化展现内容。

第三步:可视化渲染(RenderingandDisplay)

将定义好的图形转换成为图像,展现给观众。

第四步:可视化交互(Interactivity)

单一的可视化结果并不能满足用户的多方面诉求,用户往往借助交互方式,进一步了解细节或者对数据进行筛选、聚合、分面等,对数据进行多方面的探索。

下面我们详细的对第一、第二、第四步骤进行讲解。

Dataisdefinedasacollectionofmeaningfulfactswhichcanbestoredandprocessedbycomputersorhumans.

能被存储和处理的信息,都可以被视为数据。我们日常接触到的文本、视频、图像、账单等等都是数据。每一个种类的数据都是一个大的集合,由多条小的数据条目组成,称之为数据集(DataSet)。

数据集分为结构化和非结构化(比如文字、图像),数据可视化只能对结构化数据进行呈现。非结构化数据经过处理之后,可以转换为结构化数据,进一步进行可视化展现。比如文本,我们可以通过自然语言处理、机器学习、文本挖掘等多种手段将其转化为结构化数据。

数据可以被分为以下五种类别:

数据集被分为以下五种类别:

一个数据集可以由一种或者多种数据类型组成,包含关系如下表:

下面我们对几种数据集做具体的解构分析。

表格是使用行、列和单元格的概念来存储数据的结构,每一行是一条数据,每一列都有一个统一的属性定义。以下面学生信息表为例:

该表格有三条数据,每一条数据都有5个属性(Attribute),ID、Name、Age、ShirtSize、FavoriteFruit。

行列交叉的单元格里面就是具体的值(Value)。

多维表格数据和普通表格数据组织形式上最大的不同的点在于key的数量。通常一个普通表格的key就是行号,比如3.1.1的学生信息表为例,“第2行的年龄7”这样的描述,我们是可以明确的知道描述的对象的名字是Basil,而且Basil最喜欢的水果是Pear。但是对于多维表格数据则需要多个key才能确定一个value。

下图所示的一个多维表格数据,我们通过简单的行号或者选取一个键都没办法确定一个明确的数据条目,比如我们想得到一个销售值,那么应该描述成为“Timeid为1,pid11的销售值为25”,更复杂的数据需要更多的键来组合定位。

将两个维度的数据聚合在一起就是一个“面”,第三个维度方向上多个面就形成了一个“体”,如上图右侧所示,这就是数据立方体基本概念。

我们将每一个面平铺到表格中,就是一个数据透视表,如下图:

如上面表格,每个item是一个普通表格,行号或者Time都可以作为唯一的key。

网络和树数据,核心概念就是“关系”。必须要显示的定义数据条目之间的关联关系才能绘制出网络图和树图。

上图左侧是比较常见的图数据的配置结构,每一个node就是一个dataitem,node中的属性就是attributes。Edges中定义的就是节点的关系,对应于Links。

场数据,用于描述磁场、电场、风场等数据,存储结构是网格(grid),每个网格中一般是向量、标量或者张量。

结合上图左右两侧对照,场数据以网格形式存储,右侧的“gridWidth”和“gridHeight”定义了网格的大小(行列数量),field下面定义了各单元格的值(value)。下图显示了一个风场的可视化效果。

几何数据集是几何图形数据的几何,通常用来描述地理信息。

如地图,由多个几何图形拼装而成,在定义地图的数据中会定义具体的几何图形类型及位置信息。

数据集中的数据条目都会包含一个或者多个属性(Attribute),属性分为分类(Categorical)和排序(Ordered)属性。排序属性又分为顺序(Ordinal)和定量(Quantitative)两种类别。

结合上图中的学生信息表,我们具体分析一下。第一列的ID数值是序号,数字类型,属于Quantitative字段。第二列Name属于Categorical字段。第三列FavoriteFruit属于Categorical字段。第四列Age,数字类型属于Quantitative字段。第五列Gender,性别属于Categorical字段。第六列ShirtSize,衣服尺寸虽然不是数字,但是它可以进行大小排序,属于Ordinal字段。

上面我们已经了解了数据集类型,数据集类型决定我们选择什么样的可视化形式来展现数据,具体到展现的细节,则是由属性(Attribute)来决定。

Visualizationisreallyaboutexternalcognition,thatis,howresourcesoutsidethemindcanbeusedtoboostthecognitivecapabilitiesofthemind.可视化是一个帮助人们对外部信息进行认知的过程,也就是说,是一个使用大脑以外的视觉资源与信号,来帮助增强大脑认知能力的过程--StuartCard

从符号学层面来讲,人类将符号传递到大脑,随后对符号进行解码,根据大脑中的知识来得到符号具体表达的意义。

读取一张图片和接收其他信息一样,依赖我们已经掌握的知识(signifier),我们只能识别我们知道的事情(signified)。我们识别一个符号到它所要表达的意义,实际上需要一个转换“函数”,这个函数就是Code,也就是一个心理认知过程。

关于进一步的知觉感知的研究总结,我们可以抽象人们识别可视化的三个步骤:

ColinWare·《InformationVisualizationPerceptionforDesign》·2004

可视化设计的目标就是要在以上三个步骤中,缩短人类的认知过程,达到准确高效的传递信息的目的。

编码

合理准确的可视化编码,可以提高人们在感知过程中各个步骤的速度和准确性

节省墨水

为了减少冗余可视化元素对读者的影响,在设计过程中,要尽量让每一个符号都有数据意义。

准确度

很多可视化设计会出现扭曲数据的情况,我们需要对夸张程度(或者准确程度)进行度量。

下面我们分别来论述这些方法和策略。

再回到第3节关于数据的论述,我们基于数据集类型来选取合适的可视化形式,接下来需要根据具体的数据条目(Item)的特性来确定合适的图元(Mark),最后根据属性(Atrribute)来配置合适的视觉通道,对图元进行修饰。

根据数据条目的不同,将Mark分为两个类别:

1.Items/Nodes

2.Links

根据数据维度的不同,我们可以选取点、线、面来进行表达数据。对于关系数据,则需要使用Links来展现。

选取了Mark之后,需要进一步描述Mark的具体视觉特性,这些特性称之为视觉通道(VisualChannels)

Avisualchannelisawaytocontroltheappearanceofmarks

视觉通道有很多,下图以6种通道和3种Mark相组合,可以很直观的体会二者之间的关系。

(JohnKrygierandDenis《MakingMaps:AVisualGuidetoMapDesignforGIS》)

从数据到视觉通道的转换过程,被称之为视觉编码(VisualEncoding)。

不同的数据属性需要用不同的通道来进行编码才能达到更好的效果,上图将通道分成两组,分别对应分类数据和可排序数据。下面我以一个简单柱形图为例,进行拆解:

上图左侧是柱形图的配置数据,每个数据条目分为映射到X轴的Value,映射到Y轴的Value,还有一个分组字段“g”。

由于人类感知系统的特点,在不同场景下需要设计不同的编码策略,来提升感知速度和准确性。以下几项研究,对当前可视化设计有着深远影响。

预感知图形

在可视化设计过程中,尽可能的使用具有预感知特性的图形,可以加速感知处理的第一个过程。

有效性排序

一些研究人员对不同的视觉通道对不同数据进行编码进行单变量效果对比,得出有效性排名,下图是研究之一。

Youmustconsideracontinuumofpotentialinteractionsbetweenchannelsforeachpair,rangingfromtheorthogonalandindependentseparablechannelstotheinextricablycombinedintegralchannels.

--TamaraMunzner

但是在实际应用场景中,往往一个可视化作品需要组合多个通道,不同通道组合对读者的影响,实际研究不是很多,下图是其中之一。

格式塔针对人类对特定视觉模式的识别给了很好的分类,该理论同样适用于数据可视化设计。下面我们举例介绍6种原则。

邻近原则(proximity)

空间中距离相近的元素有被看作一体的趋势。人们会很自然的根据距离来对视觉对象进行分组。上图的分组柱形图,我们会很自然的把临近的柱子分为一组,其次才是观察颜色分组。

相似原则(similarity)

刺激物的形状、大小、颜色、强度等物理属性方面比较相似时,这些刺激物就容易被组织起来而构成一个整体。如下图中,根据颜色和形状,将数据分为两组。

连通性原则(ElementConnectedness)

如果一些元素与其他元素相连时,我们认为这些元素是统一体。如下面的箱型图,如果没有中间的线上线相连,上下两条线是不会被看做一个整体进行分析的。

连续性原则(Goodcontinuation)

如果一个图形的某些部分可以被看作是连接在一起的,那么这些部分就相对容易被我们视为一个整体。如下面的折线图的连线,虽然是断开的多段线,但是我们仍然视之为一条折线。

封闭的原则(closure)

有些图形是一个没有闭合的残缺的图形,但主体有一种使其闭合的倾向。如下面的形状词云。

共同命运原则(commonfate)

如果一个对象中的一部分都向共同的方向去运动,那这些共同移动的部分就易被感知为一个整体。如下方左图,我们会按照相似原则把每行看作一个分组,但是右侧由于共同的运动方向,我们会把每列看作一个分组。

谎言因子(LieFactor,LF)的概念由德国慕尼黑工业大学RüdigerWestermann教授提出,用于衡量可视化中所表达的数据量与数据之间的夸张程度的度量方法。

我们以下图为例做一个简单分析。

在上图中,1978年的长0.6英寸线条代表18m/g,而1985年5.3英寸线条代表27.5m/g,数字差异计算:

(27.5–18)/18=0.53图形差异计算:

(5.3–0.6)/0.6=7.83谎言因子计算:

LF=7.83/0.53=14.8从结果看,大大夸大了数据事实。

下图是修正过的可视化设计。

可视化的核心是数据与信息,可视化作品的大部分笔墨应该集中在数据与信息的呈现上。为此,Tufte提出了一个衡量标准Data-inkratio:Data-inkratio表示图表中不可删除的数据的部分占整个图表的比例,其定义如下:Data-inkratio=data-ink/totalinkusedtoprintthegraphic

在数据可视化中,数据的重要性高于一切。因此,在进行可视化设计时,应遵循以下两条原则:1.在合理范围内,最大化data-inkration(Maximizethedata-inkration,withinreason)2.在合理范围内,去除冗余的data-ink(Eraseredundantdata-inkration,withinreason)

下面是一张普通的散点图。图表中大部分的dataink用于数据的呈现(如点、label、坐标轴),剩余少部分的non-data-ink用于ticks、边框等,这张图表的Data-ink-ratio大概在80%左右。

极少图表的Data-inkratio能够达到1。如下面这张图表,所有的线条都是在展现数据,而且图表的坐标轴设计也十分简洁(如红框所示),也就是说,这张图表没有任何可以去除但不影响数据表达的部分了。

下面两个图表都是错误的设计。左图几乎所有的data-ink都用在了与数据表达无关的网格上;右图则忽略了数据的展示,它们的Data-inkratio都约为0。

下图是修正后的正确设计,这个图表的Data-inkratio约为0.7。

随着场景和技术的发展,更多样的交互形式也在不断的出现,但是目标都是为了进行更好的数据探索分析。下面我们看几个具体的例子。

第一个例子应用导航功能来切换数据,结合地理位置的变换来讲述内容。

第二个例子是在图可视化中常见的交互场景,通过缩放对数据进行过滤,点击节点查看有关联的其他节点信息。

第三个例子展示的是数据分面,形式变换的例子。

第四个例子是一个刷选操作的例子。

根据动画的对象,我们可以将动画分为图元动画、组件动画和全局动画。同时,人们也对经常使用的动画效果进行了抽象和总结,比如缩放、旋转、飞入、飞出等。根据动画的实际又有入场、出场、更新等分类方式。

下图是对图元动画的一个简单总结。

我们看几个示例。

全局动画简单总结如下:

最后我们给大家展示一些具体的数据集的可视化实现方案。

人们直接去分析多维数据,往往是非常困难的,借助可视化可以极大的提升效率。对多维数据进行可视化的方法也很多,这里简单介绍几种。

普通散点图可以通过大小、颜色和位置表达三个维度的数据,但是这对于更多维的数据来讲是远远不够的,于是诞生了散点图矩阵。

假设有如下图所示的数据:

每一行代表一个国家一年的观察数据,列代表变量(这种格式的数据被称作整洁数据,tidydata),其中有两个类别列(国家和洲)和四个数值列。这些列简单易懂:life_exp是出生时的预期寿命,以年为单位,popis是人口数量,gdp_per_cap是人均GDP(以国际元)为单位。只考虑数值类型属性之间的关系,可生成如下的散点图矩阵:

散点图矩阵可以进一步扩展为普通的矩阵,如下图:

平行坐标轴方法中,数据的不同维度被显示为平行的坐标轴,数据元素被表示为一根折线。

这种方法适用于所有表格类型的数据,而且支持异构数据的展现。平行坐标轴方法也扩展出多种显示形式。

Glyph是可以同时使用多个视觉通道,例如图形(shape)、颜色(colour)、文本(texture)、大小(size)、角度(orientation)、比例(aspectratio)、曲率(curvature)的一种组合图元。同时每个glyph可以单独被识别出来,为多场融合可视化提供了可能。

比如人脸图,可以通过五官要素对多个变量进行编码。

From《TheGrammarofGraphics》

下图的是一个温度计组件。水银高度和温度计宽度可以用来展现两个变量。通常可以作为散点图的变种。

from《TheGrammarofGraphics》

由于Glyph的灵活性,为创造更自由形式的可视化效果提供了可能,比如下面的向日葵图。

点线图

邻接图

通过可视化节点之间的相邻位置关系以展现树的拓扑结构,节点的大小,宽度,可以用来展现另外一个数据维度。

包含图

邻接矩阵

地球是一个球体,但是我们需要将球体展现在二维平面上,这就涉及到地图投影,常见的投影方式为魔卡托投影。地图可视化涉及到的视觉属性有面积、形状、方向、方位、距离和比例尺等。

墨卡托投影的过程其实非常简单,就是将地球展开成一个圆柱,再将圆柱展开成平面。

下面我们看几种常见的地图可视化例子。

区域分布地图

等高线地图

统计地图

统计地图是虚拟地图,以地图的形式来展现数据。

在叙事场景中,为了能让用户结合上下文来理解可视化内容,会增加一些与数据条目无法直接映射的元素。另外一个叙事作品,要从主题到形式,到叙事节奏都进行精心的设计。

下图展现的是人类历史以来大规模传染病的事件。

这幅可视化作品首先从叙事形式上,采用象征发展历程的一个道路形象设计,采用透视效果来表达这一主题。使用了非常形象的病毒形象,采用了易于区分的颜色进行分类,病毒的体积和影响人数做映射。通过这个可视化作品,我们可以非常容易的看到人类历史上那些年底爆发了超大规模的传染性疾病。

下面这个作品具有强烈的政治意图,人文关怀。

这幅作品展现的是一年中因为枪击事件而死亡的人数,巧妙的利用动画来展现一个人从生到死的过程。利用小球下坠来表达死亡。同时,一条曲线的两段对比强烈的颜色表达生和死。这个作品最大的亮点在于故事情节的设计,让读者看清表达含义之后,通过快速的视觉冲击来表达情感。节奏由慢到快,跳动的数字和主视图形成联动。

THE END
1.关于线上学习的作文(精选27篇)突然间,她会打开一个人的摄像头,叫他把之前学习的内容重复一遍,或者关闭静音系统,点名道姓,让我们来一段背书或报题目的答案,感觉就像坐在教室里上课一样。唉,在线学习也不能轻松点。可是有一次,在上课之前我无意中点开了老师事先准备的教案,哇塞,里面的资料密密麻麻,但却分门别类,归纳得清清楚楚,一目了然https://www.ruiwen.com/zuowen/xuexi/5578839.html
2.居家学习典型案例集(中学篇)在线上教学作为最重要的教授形式的时期,为提高教学有效性,教师要想方设法进行互动,调动学生课前、课后学习的积极性,所以要有“线上线下”混合式学习的理念。我的教学实践是“任务型学习方式”的实践,课前布置“预习任务单”,根据学生完成情况进行针对性的导入学习,增加学生对知识的熟悉度和亲切感,很容易调动学生学https://www.xmtaedu.cn/_t6/d3/17/c20638a185111/pagem.htm
3.在线学习的辅助学习工具与技术应用案例.pptx在线学习的辅助学习工具与技术应用案例汇报人:PPT可修改2024-01-22目录引言辅助学习工具概述技术应用案例分析辅助学习工具的优势与局限教师角色与技能要求变化学生体验与效果评估总结与展望01引言010203互联网技术的快速发展随着互联网技术的不断进步,网络带宽、数据传输速度、多媒体内容呈现等方面得到了极大的提升,为在线https://m.renrendoc.com/paper/311688462.html
4.互联网在线学习12篇(全文)互联网教学突破了学习者学习时间和空间的局限性, 有利于学习者随时、随地、随意地进行个性化的线上学习。同时, 大大降低学习者享受优质教育资源的准入条件, 让他们可以轻而易举地在线学习网络课程, 共享优质课程资源。此外, 也为学校探索线上教学与线下教育相融合、改革传统的教学方式和教学手段、创新教学方式和学习https://www.99xueshu.com/w/ikeyrjxptscy.html
5.教育读书生成学习理论知多少?否则,大脑不会将它嵌入到心智模式中,因为它并不认为它的时间或注意力“值得”。真实世界的例子给学习者提供了一个功能性的信息,这使得记忆和回忆变得更加容易。例如,在线学过程中强调了学生运用信息技术工具,能够更好地促进学习,那么学习者就会将相关经验(或技能)迁移到其他的学习、生活之中。http://www.360doc.com/content/18/0825/13/14421628_781095689.shtml
6.雅思阅读小标题的作用有哪些?从具体例子来学习一下出国留学从具体例子来学习一下,很多同学对于这个问题有疑问和不解,那么下面就跟着中国教育在线的小编详细了解一下吧。 C Yet there is a dark side to this picture: despite our progress, half of the worlds population still suffers, with water services inferior to those available to the ancient Greeks and https://www.eol.cn/waiyu/yasi/229288.html
7.学习完整的javascript教程提示:我们建议您按照左侧菜单的顺序学习本教程。通过实例来学习 例子胜过千言万语。实例比文字解释更容易理解。 本教程为所有讲解内容增补了相应的“亲自试一试”实例。 JavaScript 实例 提示:如果能够测试所有实例,那么您将在短时间内学到关于 JavaScript 的大量知识。为何学习 JavaScript? JavaScript 是 web 开发者必学https://www.w3school.com.cn/js/index.asp
8.思科网络技术学院教程(第6版):网络简介作为思科规模最大、持续时间最长的企业社会责任项目,思科网络技术学院将有效的课堂学习与创新的基于云技术的课程、教学工具相结合,致力于把学生培养成为与市场需求接轨的信息技术人才。 本书是思科网络技术学院网络简介课程的官方学习教材,本书为解释与在线课程完全相同的网络概念、技术、协议以及设备提供了现成的参考资料https://www.epubit.com/bookDetails?id=N15003
9.asp在线学习网站系统在线学习开发实例源码下载在线学习管理系统,是一个利用因特网作为平台传送教学内容,实施网上教学,进行网上交流和学习的信息系统。构建在线学习系统平台,可以克服传统课堂教育的局限性,形成一种主动的、协作的、开放的教学模式,既有生动形象和资源广泛的优点,又具有能相互访问、双向交流,不受时空限制的优良特性。系统结合实际需求,采用 B/S模式https://www.haolizi.net/example/view_227485.html
10.小闪电Arduino官方库支持,JSRUN 在线开发环境支持,助你自由发挥无限创意。 相比开发板裸板,MOS精灵是一个更具产品化、一体化的开发硬件底座, JSRUN一站式开发环境支持, 进一步降低嵌入式学习门槛,提高嵌入式开发体验。https://jsrun.net/
11.在线网课学习课堂《研究生学术与职业素养讲座》单元测试考核答案在线网课学习课堂《研究生学术与职业素养讲座》单元测试考核答案.docx 关闭预览 想预览更多内容,点击免费在线预览全文 免费在线预览全文 注:不含主观题第1题本讲中,讲述者主要以哪条河流作为水利工程的例子进行的讲解?(两个字)___ 正确答案::[ 黄河]第2题本讲中,所举的创新型人才示例,不包括下列哪个? A 比https://max.book118.com/html/2022/0729/5211344303004313.shtm
12.《统计学习方法》——决策树决策树青年中年老年例题及答案下面通过一个例子来说明特征选择问题。下面是一个由15个样本组成的贷款申请训练数据。数据包含贷款申请人的4个特征:年龄,有3个可能值;有工作,有2个可能值;有自己的房子,有2个可能值;以及信贷情况,有3个可能值。 最后一列是类别,是否同意贷款。 希望通过所给的训练数据学习一个贷款申请的决策树,用来对未来的贷款https://blog.csdn.net/yjw123456/article/details/105460329
13.W3SchoolsOnlineWebTutorialsWell organized and easy to understand Web building tutorials with lots of examples of how to use HTML, CSS, JavaScript, SQL, Python, PHP, Bootstrap, Java, XML and more.https://www.w3schools.com/
14.终身学习画布怎么做?图文案例并W举,5步解读绘制学习画布亿图图示是一款支持各种系统,也支持网页在线使用的综合办公类绘图的国产软件。支持绘制诸如终身学习画布,系统图、组织结构图、商务图表等260余种图表。亿图图示也提供十分丰富的模板和例子,这样使用者不用从头一步一步设计制作,只要选择好适合需求的模板,对其进行适当修改完善,即可绘制出直观大方的图表。 https://www.edrawsoft.cn/chart/zhongshenxuexihuabuhfa
15.Mysql联合查询UNION和UNIONALL的使用介绍Mysql本文详细介绍了Mysql的联合查询命令UNION和UNION ALL,总结了使用语法和注意事项,以及学习例子和项目例子,需要的朋友可以参考下 GPT4.0+Midjourney绘画+国内大模型 会员永久免费使用! 【如果你想靠AI翻身,你先需要一个靠谱的工具!】 一、UNION和UNION ALL的作用和语法 https://www.jb51.net/article/48933.htm
16.在线学习那么热,你知道电脑那边坐着的是谁吗?“人工智能老师具备高素质、高效能教师的关键特征和核心功能。”流利说首席执行官王翌介绍说,人工智能老师可以听取、理解、评估用户的表现并与其互动,同时还能理解他们的学习需求。 举个例子来说,截至今年6月底,流利说的“中国人英语语音数据库”总共收集了超过8380万累计注册用户提供的13亿分钟练习录音,人工智能老师通过https://www.jfdaily.com/news/detail?id=105448
17.报告解读丨手把手教你看懂报告—血常规三、边看例子边学习 案例一:白血病类型 医生在读报告时,首先会看白细胞指数。上图的白细胞数为158.55,比正常值上限还高出16倍,这种异常大幅度升高极有可能是白血病引起的。 由于白细胞分5类细胞,其中中性粒细胞占比最多,所以图中中性粒细胞无论是百分比还是绝对值,均异常大幅度升高,所以如果确定为白细胞,则可能https://m.kktijian.com/zhinan/14309.html
18.亲测国内可用!国外*级教育资源网站限免总结儿童在线学习收藏蓝斯值在线查询网址: https://fab.lexile.com 下面是一些常见的英语读物的蓝思值,大家感受一下: 举个例子,我们在Big Universe的动物一栏找到下面两本书,它们的ATOS值小于1,代表适合幼儿园到一年级的孩子阅读。左边这本书的F&P级别是F级,对应的刚好也是一年级孩子的级别。它的蓝斯值是175L,也就是非常初级的阅读https://post.smzdm.com/p/ag87qzl3/
19.小学线上教学总结在线上教学工作会议上,全体教师学习了石洲小学线上教学工作方案,明确了线上教学工作的各项要求,要求教师们积极转变授课思路,创新课程模式,调整课程知识点和课程强度,为阳光学子们开设丰富多样的课程,体现“五育并举”,同时应及时关注学生的心理情况,以鼓励和引导为主,为线上教学工作的顺利开展打下基础。 https://www.oh100.com/kaoshi/jiaoxuezongjie/647538.html
20.lyndaJoseph Johnson歌帝梵巧克力全球学习与发展总监 “领英学习是初步了解新概念和技术的好途径。这个平台在探索管理领域和软技能方面特别有吸引力。我经常发现自己每个月泡在平台上的时间长达八到十个小时,我对不同领域都有所涉猎。” MaikelTVH 数据科学家 “在寻找合适的在线学习供应商时,我会首先考虑领英学习。其他供应https://www.lynda.com/
21.Python学习网Python编程语言学习、交流、培训平台,包含最新Python3基础教程、视频教程、技术动态及下载资源推荐等,欢迎自学!https://www.py.cn/