第1篇
入门
Altair是基于Vega和Vega-Lite的声明式统计可视化Python库。借助Altair,我们可以将更多的精力和时间放在理解数据本身及数据意义上,从复杂的数据可视化过程中解脱出来。这也是为什么本书提出统计可视化(statistical visualization)而不是数据可视化(data visualization)的原因之一。
统计既是一个数据处理过程,也是一种数据分析思维,Altair之所以被称为统计可视化库,就是因为它可以通过分类汇总(aggregation)、数据变换(data transformation)、数据交互、图形复合等方式全面地认识数据、理解数据和分析数据。这些过程都可以帮助我们增加对数据本身和数据意义的理解维度,培养直观的数据分析思维。对比来看,数据可视化库则是更多地将关注点放在可视化细节上,也就是定制化地实现可视化,很多时候错过了数据的潜在价值。
说明:是一种可视化语法,也是一种创建、保存和分享交互式可视化设计的声明式语言,可以使用JSON格式描述可视化的外观和交互过程,产生基于网络的图像。Vega-Lite是在Vega基础上的一种高水平的交互式图形语法,它可以提供一种简洁、声明式的JSON语法,使用JSON语法可以创造各种表达丰富的用于数据分析和呈现的可视化作品。Vega-Lite语法规则将可视化描述为从数据到图形标记(例如,圆圈、矩形或折线)的属性(例如,颜色、大小、形状或透明度)的编码映射过程,Vega-Lite编译器自动生成可视化组件,包括坐标轴、图例及度量。
Altair以声明的方式提供一种Python语言的API用以构建统计可视化。更重要的是,Altair的API不包含实际的可视化渲染代码,而是按照Vega-Lite规则生成JSON数据结构(语法)。相应地,这种基于Vega-Lite的JSON数据结构可以由一些UI(user-interface)渲染,实现统计可视化。这些UI包括Jupyter Notebook、JupyterLab和nteract。
Altair的API建立在强大的Vega-Lite可视化语法(JSON语法规则)基础之上,具有简单、友好和一致的特点。因此,Altair这种优雅的简洁意味着使用最少的代码量就可以绘制精美高效的可视化作品。继承自Vega-Lite的Altair有一个与众不同的地方,就是它的声明式语法不仅可以实现统计可视化,而且可以完成交互式的任务,这种声明式语法也被称为图形语法。
总的来看,Altair的特点有以下几个方面。
• 基于图形语法的声明式Python API。
• 基于Vega-Lite的JSON语法规则生成Altair的Python代码。
• 在启动的Jupyter Notebook、JupyterLab和nteract中展示统计可视化过程。
• 可以将可视化作品导出为PNG/SVG格式的图片、独立运行的HTML格式的网页,或者在线上Vega-Lite编辑器中查看运行效果。