虽然静态数据可视化是向提取和解释数据集所拥有的价值和信息这一目标迈出的巨大飞跃,但交互性的增加使这些可视化向前迈了一大步。
交互式数据可视化具有以下特点:
让我们从一个示例开始,了解通过交互式可视化可以实现的目标。 让我们考虑一个注册健身房会员的数据集:
图略
以下是箱形图形式的静态数据可视化,它描述了按性别分类的人们的体重(0是男性,1是女性,2是其他):
图略
我们从该图上可获得的唯一见解是体重与性别之间的关系 - 去该体育馆的男性顾客体重在62kg至91kg之间,女性顾客体重在57kg至86kg之间,其他顾客的体重在61kg至90kg之间。 但是,数据集中存在用于生成该箱形图的第三个特征-年龄。 在前面的静态图中添加此功能可能会导致在理解数据方面的混乱。 因此,对于使用静态可视化显示所有三个功能之间的关系,我们有些困惑。 通过创建交互式可视化文件,可以轻松解决此问题,如下所示:
图略
在前面的方框图中,为年龄功能引入了一个滑块。 用户可以手动滑动滑块的位置,以观察体重,性别和年龄在不同年龄值之间的关系。 此外,还有一个悬停工具,允许用户获得有关数据的更多信息。
前面的方框图说明,在这个体育馆中,只有46岁的顾客是与众不同的顾客,最重的46岁顾客重82公斤,而最轻的人重56公斤。
用户可以滑动到另一个位置,以观察不同年龄的体重和性别之间的关系,如下图所示:
图略
上图描述了34岁时的数据–没有男性健身客户; 但是,最重的34岁女性客户体重为100公斤,而最轻的女性客户体重为71公斤。
但是,区分静态可视化和交互式可视化时还有更多方面要考虑。 让我们看一下下表:
图略
最终,交互式数据可视化将数据的讨论转变为讲故事的艺术,从而简化了理解数据试图告诉我们的过程。 他们既有益于创建可视化的人(因为他们试图传达的消息和信息被有效且以视觉愉悦的方式传达),也有益于查看可视化的人(因为他们几乎可以立即理解并观察模式和见解) 。 这些方面是将交互式可视化与静态可视化分开的地方。
正如我们前面提到的,交互式数据可视化的关键方面是它能够立即或在很短的时间内响应和响应人类的输入。 因此,人工输入本身在交互式数据可视化中起着重要作用。 在此,我们将研究一些人工输入,如何将其引入数据可视化中以及它们对数据理解的影响。
以下是一些最流行的人工输入和交互功能形式:
图略
图略
图略
有一些Python库可用于创建这些交互式功能,从而使可视化可以接受人工输入。 因此,在开始编码和创建这些交互式功能之前,让我们快速看一下现有的一些最流行的交互式数据可视化Python库。
我们已知两个内置的Python库:
两者在数据可视化社区中都很流行。
有了这些,我们可以建立一个静态可视化(一个静态散点图,显示两个变量之间的关系),如下所示:
图略
尽管matplotlib和seaborn都非常适合静态数据可视化,但还有其他库可以很好地设计交互功能。
以下是两个最受欢迎的交互式数据可视化Python库:
这些有助于我们创建如下可视化效果:
图略
接下来,我们将同时使用bokeh和plot来创建交互式数据可视化。
详情参阅 - 亚图跨际