数据可视化 课件 第4-9章 数据可视化的任务和过程-可视化大屏_第1页
数据可视化 课件 第4-9章 数据可视化的任务和过程-可视化大屏_第2页
数据可视化 课件 第4-9章 数据可视化的任务和过程-可视化大屏_第3页
数据可视化 课件 第4-9章 数据可视化的任务和过程-可视化大屏_第4页
数据可视化 课件 第4-9章 数据可视化的任务和过程-可视化大屏_第5页
已阅读5页,还剩191页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章

数据可视化的任务和过程本章主要内容

4.1

数据可视化的目的

4.2

数据可视化的任务

4.3

数据可视化的一般过程

4.4

数据可视化的基本原则

4.5

数据可视化设计组件4.1

数据可视化的目的模式相互关系有问题的数据让数据讲故事模式相互关系有问题的数据

大部分异常都只是笔误而已,但有些异常却真的存在,而它们就是有意思的地方,可以作为故事的重点。如果你遇到了异常,一定要确定它到底属于前者还是后者。4.2

数据可视化的基本任务概览任务缩放任务过滤任务按需细化任务关联任务历史任务提取任务(1)概览任务用户能够获得整个集合的概览。概览可能包含可移动的视图域框,用户用它来控制细节视图的内容,允许缩放因子在3~30之间。(2)缩放任务用户能够放大感兴趣的条目。用户通常对集合中的某个部分感兴趣,需要使用工具控制缩放焦点和缩放因子。平滑的缩放有助于用户保持他们的位置感和上下文。缩放在针对小显示器的应用程序中特别重要。(3)过滤任务用户能够滤掉不感兴趣的条目。当用户控制显示的内容时,他们能够通过去除不想要的条目而快速集中他们的兴趣。(4)按需细化任务用户能够选择一个条目或一个组来获得细节。通常的方法是仅在条目上点击,然后在单独或弹出的窗口中查看细节。按需细化窗口可能包含到更多信息的链接。(5)关联任务用户能够关联集合内的条目或组。在视觉显示之内,有机会按接近性、包容性、连线或颜色编码来显示关系。突出显示技术能够被用于引起对有数千条目的域中某些条目的注意。指向视觉显示能够允许快速选择,且反馈是明显的。(6)历史任务用户能够保存动作历史以支持撤销、回放和逐步细化。信息探索是一个有很多步骤的过程,所以保存动作的历史并允许用户追溯其步骤是重要的。(7)提取任务用户能够允许子集和查询参数的提取。一旦用户获得了他们想要的条目或条目集合,对他们有用的是,他们能够提取该集合并保存它、通过电子邮件发送它或把它插入统计或呈现的软件包中。4.3

数据可视化的一般过程可视化流水线模型描述了从数据空间到可视空间的映射体现了数据处理和图形绘制的嵌套组合科学可视化流程Haber,R.B.andMcNabb,D.A.

Visualizationidioms:Aconceptualmodelforscientificvisualizationsystems,

1990.信息可视化流程Card,S.K.,Mackinlay,J.D.,andShneiderman,B.,editors.ReadingsinInformationVisualization:UsingVisiontoThink,

1999.视化循环模型可ByC

Solte.回路模型ByJarkVan

Wijk人机交互可视化模型—可视分析模型KeimD,ZhangL.Solvingproblemswithvisualanalyticschallengesandapplications[C]EuropeanConferenceonMachineLearning.KnowledgeDiscoveryinDatabases.ElsevierB.V.

20111-4.4.4

数据可视化设计的基本原则正确的可视化故事与视图选择图表的可读性美学原则合理的信息密度筛选恰当的可视化交互自然的可视化隐喻适度的动画与过渡网格及其标注的合理使用可视化元素的平衡分布21视化中的美学因素可认真仔细地对待可视化设计中的标注正确使用颜色(色彩美)合理使用网格构图美布局原则(布局美)聚焦平衡简单(a)不完整的可视化结果,用户无法得知几条曲线的意义;

(b)一个完整的可视化结果。恰当的交互交互之前有引导,交互之后有反馈保证交互操作的直观性、易理解性和易记忆性用信息轮播、动画等效果自动切换数据信息,以推进可视化故事的叙述.什么是视觉隐喻隐喻(metaphor)的一种在视觉上将目标物体/形象与另一领域的(源)物体进行相似性对比常用于广告、平面设计等可视化隐喻将数据特性与自然界真实物体结合起来通过读者对自然界物体的认知来增强可视化表达效果体现了可视化设计的人本思想隐喻:树猴面包树(baobabview):使用树表达分类隐喻:河流Textflow:使用流来表达文本主题演化巧用动画与过渡增加可视化结果视图的丰富性与可理解性;增强重点信息或者整体画面的表现力。原则;适量原则统一原则易理解原则动画适用场景

1.

辅助不同视图/不同可视化视觉通道的变换

如果可视化的信息筛选后,密度仍然较大,可设计多个视图用于展示各种数据表达的信息。

可视化视觉通道(数据量、表现形式/状态)发生变化时,为了减轻视图变化给用户带来的“冲击”,避免用户在变化中迷失,可以使用动画的形式过渡。动画适用场景不同图表类型切换动效

2.

交互反馈效果

实时的反馈效果有助于用户获得此次操作的确认,避免用户盲目重复操作。

当鼠标移动到特定可视化区域,出现光晕或者微动效发生相应变化,以指引用户进行操作。动画适用场景

3.

微交互动效,引起注意视觉通道经常有运动、闪烁、虚拟物体的动作等动画效果,增加趣味性动画适用场景闪烁动效,吸引注意力4.5

数据可视化设计组件坐标系:用散点图映射数据和用圆饼图是不一样的。

标尺:有意义的增量可以增强可读性,就像改变焦点一样。

背景信息:如果可视化产品的读者对数据不熟悉,则应该阐明数据的含义以及读图的方式。

视觉隐喻三种坐标系直角坐标系(笛卡尔坐标系)极坐标系地理坐标系(1)直角坐标系是最常用的坐标系(如条形图、散点图)。通常可以认为坐标就是被标记为(x,

y)的XY值对。坐标的两条线垂直相交,取值范围从负到正,组成了坐标轴。直角坐标系还可以向多维空间扩展。三维空间可以用(x,

y,

z)三值对来替代(x,

y)。可以用直角坐标系来画几何图形。(2)极坐标系由一个圆形网格构成,最右边的点是零度。角度越大,逆时针旋转越多。距离圆心越远,半径越大。极坐标系没有直角坐标系用得多,但在角度和方向很重要时它会更有用。(3)地理坐标系映射位置数据。位置数据的形式通常是用纬度和经度来描述,分别相对于赤道和子午线的角度,有时还包含高度。相对于直角坐标系,纬度就好比水平轴,经度就好比垂直轴。也就是说,相当于使用了平面投影。绘制地表地图最关键的地方是要在二维平面上显示球形物体的表面,被称为投影。当把一个三维物体投射到二维平面上时,会丢失一些信息,与此同时,其他信息则被保留下来了。标尺坐标系指定了可视化的维度,而标尺则指定了在每一个维度里数据映射到哪里。3 4对数标尺关注百分比变化0 10 100 1000

10000线性标尺数值等距分布0 1 2分类标尺离散的条形A B C D E顺序标尺有序的分类标尺可怕的

坏的

好的

很好的

非常好百分比标尺描述整体中的部分0% 25% 50%

75%100%时间标尺以月、日或小时为单位1月

2月

3月

4月

5月三种基本标尺:数字标尺分类标尺时间标尺(1)数字标尺其上的间距相等,因此,在标尺的低端测量两点间的距离,和在标尺高端测量的结果是一样的。对数标尺随着数值的增加而压缩。不像线性标尺那样被广泛使用。但关心百分比变化而不是原始计数,或者数值的范围很广,对数标尺很有用。百分比标尺通常也是线性的,用来表示整体中的部分时,最大值是100%(所有部分总和是100%)。(2)分类标尺为不同的分类提供视觉分隔。通常和数字标尺一起使用。分类间的间隔是随意的,和数值没有关系。对于分类的顺序标尺来说,顺序很重要。比如,将电影的分类排名数据按从糟糕的到非常好的这种顺序显示,能帮助观众更轻松地判断和比较影片的质量。(3)时间标尺时间是连续变量。可以把时间数据画到线性标尺上,也可以将其分成月份或者星期这样的分类,作为离散变量处理。也可以是周期性的,总有下一个正午、下一个星期六和下一个一月份。帮助更好地理解数据相关的5W信息,即何人、何事、何时、何地、为何,可以使数据更清晰,并且能正确引导读者。有时背景信息是直接画出来的,有时则隐含在媒介中。背景信息图.

汽柴油历史调价信息背景信息视觉隐喻是人们看到的主要部分坐标系和标尺可使其结构化,创造出空间感背景信息则赋予数据以生命。数据量越大,可视化的选择就越多,然而很多选择可能是不合适的。组件整合组件整合本质上,可视化是一个抽象的过程,是把数据映射到了几何图形和颜色上。技术角度很容易做到。难点在于,要知道什么形状和颜色是最合适的、画在哪里以及画多大。第5章

有关时间趋势的可视化在时间中寻求什么时间中的离散点(柱形、柱形堆叠、圆点)延续性数据(点点相连、平滑与估算)本章主要内容5.1

在时间中寻求什么发现趋势找出变化中存在的模式了解来龙去脉图

时序数据的可视化3

-2

-1

-02000 2005 2010 20152000 2005 2010 20153

-2

-1

-0早上6点晚上12点晚上9点中午12点早上9点下午3点下午6点与折线图类似,

早上3点

但是围绕成了一圈径向分布图散点图显示不同的点,如果数据量不大,可以用线连接起来以显示趋势2000 2005 2010 201503

-2

-1

-对于离散的时间点很有用时序图有很多方法可以观察到随着时间推移生成的模式,可以用长度、方向和位置等这些视觉暗示。条形图

折线图2000 2005 2010 20153

-2

-1

-0线条使趋势更加明显相对条形图,更聚焦于端点点线图日历2015年1月星期模式图形看上去更有力5.2.1

柱形图5.2

时间中的离散点标注http://www.allanalytics.com/author.asp?se

ction_id=3072&doc_id=2625395.2.2

堆叠柱状图数据存在子分类,且各子分类之和有意义。工具实现Tableau案例演示产品类别销售额和利润额比较单击标记卡[标签],点选[对齐]右侧的“﹀”符号,在[方向]中点选“A”

:并列柱形图堆叠条形图是一个综合性的库,用于在Python中创建静态、动画和交互式可视化。创建出版物质量图。制作可缩放、平移和更新的交互式图形。定制视觉风格和布局。导出为多种文件格式。嵌入JupyterLab和图形用户界面。使用基于Matplotlib的丰富的第三方软件包。Python-Matplotlib

简介Matplotlib绘图的一般过程生成或读入数据创建画布、获取坐标轴根据实际需要绘制折线图、散点图、柱状图、饼状图、雷达图或三维曲线和曲面设置坐标轴标签(可以使用matplotlib.pyplot模块的xlabel()、ylabel()函数或轴域的set_xlabel()、set_ylabel()方法)、坐标轴刻度(可以使用matplotlib. pyplot模块的xticks()、yticks()函数或轴域的set_xticks()、set_yticks()方法)、图例(可以使用matplotlib.pyplot模块的legend()函数)、标题(可以使用matplotlib.pyplot模块的title()函数)等图形属性,最后显示或保存绘图结果。函数名称:figure()函数功能:创建画布调用签名:figure(num,figsize,dpi,facecolor,edgecolor,frameon)参数说明:num→当前图形的编号或名称,数据为整数或字符串,默认为None。figsize→宽度和高度(单位是英寸),数据为浮点数二元组,默认为[6.4,

4.8]。dpi→图形的分辨率,即每英寸的像素数,数据为浮点数,默认值为72。facecolor→图片的背景颜色,数据为颜色值,默认为white。edgecolor→图片的边界颜色,数据为颜色值,默认为white。frameon→是否显示边框,数据为布尔值,默认为

True创建画布坐标轴:

axes

&

axis

IIlegend

位置属性loc显示和保存图像Python柱状图matplotlib

——

添加文本信息(text)matplotlib.pyplot.text(x,y,s,fontdict=None,withdash=False,

**kwargs)x,

y:表示坐标;s:字符串文本;fontdict:字典,可选;kw:fontsize=12,horizontalalignment=‘center’、ha=’center’

#简写haverticalalignment=’center’、va=’center’ #简写va•fig.text()(fig=

plt.figure(…))ax.text()(ax=

plt.subplot(…))返回值:此方法返回作为创建的文本实例的文本。并列柱状图层叠柱状图Python水平柱状图——条形图barh()

matplotlib.pyplot.barh(y,width,height,left,

align='center',**kwargs)参数说明(部分):y→y轴的坐标,浮点数或类数组width→条形的宽度,即x轴坐标,浮点数或类数组height→条形的高度,浮点数或类数组,默认值0.8left→条形左侧的横坐标,

浮点数或类数组,默认值0align→条形底部与纵坐标的对齐方式,默认center'center'

:将条形以y位置为中心放置'edge':将条形的下边缘与y位置对齐要对齐条形的上边缘,可以传递负数的宽度值,并使align='edge'离散分布图5.2.3

散点图柱形图用高度作为视觉线索,而散点图则用位置。可以根据每个点的x轴和y轴坐标来观察,并且根据其他点的位置来进行相互比较。散点图可以提供三类关键信息:变量之间是否存在数量关联趋势;如果存在关联趋势,是线性还是非线性的;观察是否有存在离群值,从而分析这些离群值对建模分析的影响。散点图的重点在每个数值上,趋势不是那么明显。稀疏的散点图2%

0%1955196519751985199520052015失业率10%

8%

6%

4%

用线把稀疏的点连起来,图的焦点就又变了。如果更关心整体趋势,而不是具体的月度变化,那么可以对这些点使用LOESS曲线法

,而不是连接每个点。10%

8%

4%

6%

2%

0%失业率10%

8%

4%

6%

2%

0%1955196519751985199520052015失业率图

用线连接的稀疏散点图图

拟合的LOESS曲线显示数据相同的中值,方差,对应系数和线性回归线数据的相关类型不同的相关程度气泡图优势在于一次比较3个变量:x轴y轴气泡的面积图.

气泡图的基本框架美国谋杀率与入室盗窃率图.

显示美国犯罪率的气泡图加入了各州的人口数量作为第三维度。是否人数越多的州,犯罪率也会越高?工具实现Tableau案例演示新的发现Python

实现——散点图使用Matplotlib库中的scatter函数绘制散点图:函数名称:scatter()函数功能:寻找变量之间的关系调用签名:matplotlib.pyplot.scatter(x,y,s,c,marker,alpha,linewidths,edgecolors)参数说明(部分):x,

y

→散点的坐标,

数据为浮点数或类数组s

→散点的面积,数据为浮点数或类数组c

→散点的颜色,数据为类数组或颜色值,默认值为蓝色'b'marker

→散点样式,默认值为实心圆'o'alpha

→散点透明度,数据为0-1之间的浮点数,0表示完全透明,1表示完全不透明linewidths

→散点的边缘线宽,数据为浮点数或类数组,默认值1.5edgecolors

→散点的边缘颜色,数据为‘face’、‘None’或颜色值,face指与图形的填充颜色相同,默认facematplotlib库marker表散点图矩阵是散点图的高维扩展从一定程度上克服了在平面上展示高维数据的困难。发现两两变量之间的联系。图.

美国各州犯罪率的散点图矩阵scatter_matrix(

)pandas.plotting.scatter_matrix(frame,alpha=0.5,figsize=None,ax=None,grid=False,diagonal='hist',marker='.',density_kwds=None,hist_kwds=None,range_padding=0.05,**kwds)参数说明:frame:

DataFramealpha:

浮点型,可选择,设置透明度figsize:

(浮点型,浮点型),

可选择,以英寸为单位的元组(宽、高),设置图像大小ax

:Matplotlib轴对象,可选grid

:

布尔型,可选,将其设置为True将显示网格diagonal

:

{‘hist’,

‘kde’},在“kde”和“hist”之间选择内核密度估计或对角线上的直方图marker:

字符串,可选,Matplotlib标记类型,默认是'.'hist_kwds

:

其他标绘关键字参数,传递给hist函数density_kwds

:其他标绘关键字参数,传递给核密度估计标绘range_padding

:

浮点型,可选x和y轴范围相对于(x_max

-x_min)或(y_max

-y_min)的相对扩展,默认为0.05kwds

:

其他标绘关键字参数,要传递到散点函数6.3 延续性数据时间序列图表的绘制和点状图很相似,只是要用线条将圆点连接起来。折线图工具实现TableauPython实现函数名称:plot()函数功能:绘制折线图调用签名:matplotlib.pyplot.plot(x,y,linewidth,linestyle,color,marker,

alpha,label)参数说明(部分):x,

y

→x轴和y轴的坐标,类数组或标量。linewidth→折线的宽度,浮点数。linestyle→折线的线型,'-','--','-.',':',''等。color→折线的颜色,数据为颜色值。marker

→折线的标记,‘o’为圆圈,‘*’为星号,‘s为方形’等。alpha

→透明度,0-1的浮点数。label→图例,需要在使用plt.plot()后用plt.legend()加载出来。第6章

有关比例的可视化本章主要内容6.2

整体中的各个部分饼图环形图玫瑰图比例中的堆叠层级和矩形——树图6.2

带时间属性的比例(堆叠的延续)部分与整体关系避免3D/articles/08-21-07.pdf6.1

整体中的各个部分——饼图工具实现Python

实现x→楔形尺寸,浮点型数组。explode→指定偏移每个楔块的半径,数组,默认值:无;如果不是无,则是一个len(x)数组。labels→为每个楔块提供标签的一系列字符串,列表类型,默认值:无。colors→每个扇形的颜色,数组类型,默认值:无。autopct→用数值标记楔块,标签将放在楔子内。字符串或函数,默认值:无。如果是格式字符串,则标签为fmt%pct,例如%d%%表示整数百分比,%0.1f%%表示一位小数百分比,%0.2f%%表示两位小数百分比。如果是函数,则调用。•pctdistance→圆心与标签之间距离与半径的比率,大于1时标签会显示在圆外,默认值为0.6。•wedgeprops→参数字典传递给

wedge

对象。字典类型。默认值:无,例如:wedgeprops={'width':0.3}

使得饼图0.7倍半径是空白。matplotlib.pyplot.pie(x,explode,labels,colors,autopct,pctdistance,

wedgeprops,**kwargs)参数说明(部分):6.1.2

环形图图.

面包圈图的基本框架工具实现6.1.3

玫瑰图又名鸡冠花图、极坐标区域图,是南丁格尔在克里米亚战争期间提交的一份关于士兵死伤的报告时发明的一种图表。是在极坐标下绘制的柱状图,使用圆弧的半径长短表示数据的大小(数量的多少)。由于圆形有周期的特性,所以也适用于表示一个周期内的时间概念,比如星期、月份。对比不同分类的大小各国制造指数对比,以美国为基准(100),中国的制造成本指数是

96

,即同样一件产品,在美国制造成本是

1

美元,那么在中国则需要

0.96

美元层叠玫瑰图Python玫瑰图方法二:PyechartsPyecharts是Echarts图表的一个类库。主要基于Web浏览器进行显示。Echarts是百度开源的一个可视化Javascript库。一般绘制步骤:chart_name=Type() #初始化具体类型图表chart_name.add() #添加数据及配置项chart_name.render()

#生成本地文件(html/jpeg/pnd/pdf/gif)chart_name.render_notebook()

#notebook中显示pie.add(series_name,data_pair,color,radius,center,rosetype)参数说明(部分):series_name→系列名称,用于

tooltip

的显示,legend

的图例筛选,字符串类型。data_pair→系列数据项,格式为

[(key1,

value1),

(key2,

value2)],列表类型。color→系列标签的颜色,字符串类型。radius→饼图的半径,默认为百分比,列表类型。center→饼图的中心(圆心)坐标,默认为百分比,列表类型。rosetype→是否展示成南丁格尔图,通过半径区分数据大小,有'radius'和'area'两种模式。radius:扇区圆心角展现数据的百分比,半径展现数据的大小。area:所有扇区圆心角相同,仅通过半径展现数据大小,字符串类型。6.1.4 比例中的堆叠图.

按类别划分的堆叠柱形图近期民意调查显示,民众对奥巴马在种族关系向题上的举措持有52%的支持率.这也是以下13个问题中他唯━获得多数支持的举措在其中8个问题上他都获得了多数反对。巴拉克·奥巴马的支持率1.漏斗图(Funnel)用梯形面积表示某个环节业务量与上一个环节之间的差异。可以比较各环节业务数据,展示各步骤的转化率。适用于分析具有规范性、周期长的业务流程。Python

漏斗图2.旭日图通常用来表示多层次数据的层级和大小关系。旭日图=n张饼图不仅可以体现数据比例,还能体现数据层级之间的关系。方法一:plotly.express.sunburst(data,

names,parents,

values……)方法二:plotly.express.sunburst(data,

path,values……)旭日图plotly.express.sunburst(data_frame,names,parents,values,path,color)参数说明(部分):data_frame→旭日图展示的数据,数据框类型,或类似数组的或dictnames→扇形部分的标签,

str或int或Series或array-likeparents→旭日图中的父项,

str或int或Series或array-likevalues→扇形部分的值,

str或int或Series或array-likepath→扇形部分的层次结构,路径为从根到叶,

str或int的列表,或Series或array-likecolor→为图中的标记指定颜色,str或int或Series或array-like3.

桑基图(Sankey

diagram)即桑基能量分流图,也叫桑基能量平衡图。是一种特定类型的流程图.因1898年爱尔兰裔工程师MatthewHenry

Phineas

Riall

Sankey绘制的“蒸汽机的能源效率图”而闻名。延伸的分支的宽度对应数据流量的大小通常应用于能源、物流、人口流动、资源分配等领域的可视化分析。Python绘制桑基图Sankey.add(series_name,nodes,links,label_opts,linestyle_opt)参数说明(部分):series_name→桑基图标题,字符串型nodes→添加数据节点,列表型[{“name”:……},]links→设置节点之间的关系,列表型[{“source”:……,“target”:……,“value”:……},]label_opts→标签配置项,具体可参考/#/zh-cn/series_options下的LabelOptslinestyle opt→线条样式配置项,具体可参考4.瀑布图

(

Waterfall

Plot

)由麦肯锡顾问公司所独创的图表类型。采用绝对值与相对值结合的方式,展示各成分构成情况。更多的用于核心指标的分解,适合展示数据累积变化过程。Python瀑布图

方法一:基于matplotlib库,?函数来绘制

方法二:%pipinstallwaterfallchartswaterfall_chart.plot(x,y,**kwargs)

x:

x轴上的值

y:

y轴上的值bar()方法三:使用Plotly库的go.Waterfall(x,y,**kwargs)

x: x轴上的值

y: y轴上的值

text:

将要在图表上显示的值

textposition:

把文本放在图表的柱内或柱上方

connector:

为连接器线提供颜色

increasing:

给递增的条赋予颜色

decreasing:

给递减的条上色6.1.5

层级和矩形矩形树状图(Treemap)展现同一层级的不同分类的占比情况,还可以同一个分类下子级的占比情况,每个矩形代表一个聚合类,颜色的深浅和面积的大小代表这个聚合类的大小。适用于多层级分析图.

板块层级图的基本框架分析各产品的销售占比情况,不同的矩形面积代表了不同商品的销售情况。可以使用下钻和上卷来对数据的层级关系进行可视化分析。对家用电器下钻后,显示当前类型产品下各供应商的订单占比Python

树图方法一:matplotlib

的squarify包squarify.plot(sizes,norm_x=100,norm_y=100,color=None,label=None,value=None,alpha,pad,**kwargs)sizes:指定离散变量各水平对应的数值,即反映树地图子块的面积大小;norm_x:默认将x轴的范围限定在0-100之内;norm_y:默认将y轴的范围限定在0-100之内;color:自定义设置树地图子块的填充色;label:为每个子块指定标签;value:为每个子块添加数值大小的标签;alpha:设置填充色的透明度pad:

块之间是否分离1.px.treemap(names,

parents)names,列表型parents,列表型2.px.treemap(df,path

=

[px.Constant("all"),"根节点","一级","二级"],values

=color

=)方法二:基于

Plotly_express

绘制数据框6.2

带时间属性的比例(堆叠的延续)

堆积图 //interactive/2009/07/31/business/20080801-metrics-graphic.html?hp图.

美国人每天时间的使用情况调查stackplot(x,y,labels,baseline,

**kwargs)参数说明(部分):x→x轴的数据,一维数组。y→y轴的数据,二维数组或一维数组序列。labels→每组折线及填充区域的标签,列表类型。baseline→计算基线的方法,包括'zero'、'sym'、'wiggle'和'weighted_wiggle'。其中,'zero'表示恒定零基线,即简单的堆积图;'sym'表示对称于零基线;'wiggle'表示最小化平方斜率的总和;'weighted_wiggle'表示执行相同操作,但权重要考虑到每个图层的大小,也称为“Streamgraph”布局。第7章

有关关系的可视化本章主要内容在关系中寻求什么关联性(圆点、探索更多的变量、气泡)分布(老式分布图表、有关分布的柱形、延续性的密度)对照和比较7.1

在关系中寻求什么当某个数量增加时,另一个数量是否会减少?它们之间是因果关系还是关联关系?群体彼此之间是存在交叠还是互不干涉?关联性可以帮助我们根据某一已知指标来预测另一指标。7.2

关联性——散点图(探索更多的变量)图.

散点图矩阵的基本框架7.2关联性

气泡图优势在于一次比较3个变量:x轴y轴气泡的面积图.

气泡图的基本框架7.3

分布直方图Hist()用一系列宽度相等、高度不等的长方形来表示数据分布matplotlib.pyplot.hist(x, bins, range, density,weights, cumulative, bottom,histtype,**kwargs)参数说明(部分):

x→作图所用的数据,一维数组,多维数组可以扁平化后再作图

bins→直方图的柱数,可选项,整数、序列或字符串型。默认10

range→指定直方图数据的上下界,默认包含绘图数据的最大值和最小值(范围)

density→布尔值,如果为"True”,将y轴转化为密度刻度,默认为None

weights→为每个数据点设置权重

cumulative→布尔值,是否需要计算累计频数或频率,默认为False

bottom→为直方图添加基准线,数组型,默认为none

histtype→直方图类型,分为bar,barstacked,step,stepfilled。默认为bar内距IQRInter-QuartileRange ,又

四分位差。盒须图(箱形图主要用于反映原始数据分布的特征,也可以进行多组数据分布特征的比较。盒须图变种可以水平或者垂直绘制盒须图变种2DBox

PlotRelplotRangefinderBox

PlotBag

Plotmatplotlib.pyplot.boxplot(x,notch,vert,patch_artist,whis,widths,

labels,**kwargs)x:输入数据。类型为数组或向量序列。必备参数。notch:控制箱体中央是否有V型凹槽。当取值为True时,箱体中央有V型凹槽,凹槽表示中位数的置信区间;取值为False时,箱体为矩形。类型为布尔值,默认值为False。可选参数。sym:离群点的默认标记符号,详解flierprops参数。类型为字符串,默认值为'None'。可选参数。取值为''隐藏离群点,取值为'None'时,取值为'b+’。vert:箱体的方向,当取值为True时,绘制垂直箱体,当取值为False时,绘制水平箱体。类型为布尔值,默认值为True。可选参数。whis:箱须的位置。类型为浮点数或浮点数二元组,默认值为1.5。

可选参数。7.4

对照和比较(多变量比较)1.

切尔诺夫脸谱图(

Chernoff

Faces)根据数据,将多个变量一次性展现在人脸的各个部位上,例如耳朵、头发、眼睛、鼻子等图.

2008—2009赛季NBA前50位得分手的切尔诺夫脸谱图2.

雷达图(Radar

Chart,Spider

Chart)也称为网络图、蜘蛛图、星图、蜘蛛网图,是一种表现多维数据的图表。将多个维度的数据量映射到坐标轴上,每一个维度的数据都分别对应一个坐标轴,这些坐标轴以相同的间距沿着径向排列,并且刻度相同。网格线通常只作为辅助元素,将坐标轴上的数据点用线连接起来就形成了一个多边形。多组多维对比-多雷达链两款手机的综合表现雷达图:matplotlib

库polar(

)函数:matplotlib.pyplot.polar(theta,

r,**kwargs)theta:旋转角度r:每个标记到圆心的距离kwargs:关键字参数集合网格线设置函数:matplotlib.pyplot.thetagrids(angles=None,labels=None,fmt=None,

**kwargs)3.

热力图(Heat

Map)通过色差、亮度来展示数据的差异,直观了解点位的聚集情况,易于理解。热力图尤其关注分布。热力图可以不需要坐标轴,其背景常常是图片或地图。杭州房租热力图,用于显示杭州市房租价格分布seaborn.heatmap(data,vmin,vmax,cmap,annot,fmt,linewidths,xticklabels,yticklabels,**kwargs)根据data传入的值画出热力图,一般是二维矩阵vmin设置最小值,

vmax设置最大值cmap换用不同的颜色center设置中心值annot

是否在方格上写上对应的数字fmt写入热力图的数据类型,默认为科学计数,d表示整数,.1f表示保留一位小数linewidths

设置方格之间的间隔xticklabels,yticklabels填到横纵坐标的值。可以是bool,填或者不填。可以是int,以什么间隔填,可以是list4.

平行坐标图(Parallel)一种用来呈现多变量关系,或者高维度数据的可视化技术。纵向是属性值,横向是属性类别。为了反映变化趋势和各个变量间相互关系,往往将描述不同变量的各点连接成折线。pandas.plotting.parallel_coordinates(frame,class_column,

cols=None,ax=None,color=None,use_columns=False,xticks=None,colormap=None,axvlines=True,axvlines_kwds=None,sort_labels=False,

**kwargs)参数:frame:

DataFrameclass_column:str包含类名的列名。cols:列表,可选。

要使用的列名列表。返回:类

matplotlib.axis.Axes一、基于Pandas二、基于Pyecharts的Paralleladd_schema()用于定义平行坐标图中的坐标轴,设置坐标轴的名称、类型和标签格式等信息。dim:坐标轴的名称,字符串类型type:坐标轴的类型,可以是'value‘或'category‘。value:表示坐标轴的类型为连续型数值型数据,坐标轴上的刻度间距会按照数据范围和坐标轴长度自动计算。

category:表示坐标轴的类型为离散型类别数据,坐标轴上的刻度间距会按照坐标轴长度自动计算,类别数据按照在

`add`

方法中添加的顺序在坐标轴上排列。第8章

有关空间关系的可视化本章主要内容在空间中寻求什么具体位置(经度和纬度)地区跨越空间和时间(系列组图、差额、动画)8.1

在空间中寻求什么使用地图作为背景,通过图形的位置来表现数据的地理位置,通常来展示数据在不同地理区域上的分布情况。引入时间后的变化地图是可交互的情况图.

销售额-美国◼空间数据存在自然的层次结构,可以并需要以不同的粒度进行探索研究。8.2

具体位置(找到经度和纬度)图.

地图标识地点的基本框架8.3

地区——分级统计图(色级统计图)地图上每个分区的数量使用不同的色级表示,典型的方法有:一个颜色到另一个颜色混合渐变;单一的色调渐变;透明到不透明;明到暗;用一个完整的色谱变化。较多的是反映呈面状但属分散分布的现象,如反映人口密度、某农作物播种面积的比、人均收入等。2014年美国各个州的人口情况(数据来源于

United

States

Census

Bureau)8.4

跨越空间和时间图.

2004——2009年的美国失业率差额并不是只创建系列地图才能表现出变化。有时候在一幅地图中只对变化进行可视化反而会更有意义。能节省空间,而且突出的是变化,而非单个的时间片段。动画一种可视化空间和时间变化的方式是:

让数据“动”起来。python

地图第三方库PyGMT:

GMT的

python

接口

bokeh:

擅长制作交互式图表,支持

google

地图、geojson

数据的可视化

basemap:

Matplotlib

的地图投影扩展,支持

25

中不同投影的底图绘制geopadas:

python

地理

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论