![](https://filescdn.proginn.com/7f9f97209c6f46aedc6aa28cff07b314/628e90fb71e2e701a865fc2dcbbef69e.webp)
对于Python的可视化工具,大家都或多或少的接触和使用过,像是大家熟知的matplotlib、Seaborn等库,以及之前小编为大家推荐的Plotly库。
今天,小编将为大家介绍一个新的专门为python编写的可视化神器,该库专注于对于数据信息的探索,非常适合数据分析方向的小伙伴来使用,一起来看看吧。
对于Altair库的安装,非常的方便,大家只需要通过pip install Altair即可完成安装。接着就可以在我们的程序中进行使用了。Altair也提供了主页,方便大家进行系统的学习。主页的地址为:https://altair-viz.github.io/。![](https://filescdn.proginn.com/2984b841ad7299839a71071282709cb5/deb1393007a629effcb3448c726c598d.webp)
1).常用API介绍
下面我们来针对Altair中常用的API来做个简单的介绍吧,首先是散点图的绘制。我们利用的数据如下所示。![](https://filescdn.proginn.com/dea7d66442c60feda4c74c7a0e3d5862/f5d18e1bf762f43d8e185e98d86ca6ff.webp)
散点图是经常用的一种图形,看数据的分布密集程度经常用它。来看一下它的程序和可视化结果如下图所示:
![](https://filescdn.proginn.com/446af958cab1242fd7e7d3db895ed79d/99382fdd310ce534e42c82ecc0e0830d.webp)
上述的程序中,首先Altair调用了Chart类,然后在chart图表中根据我们传入的cars数据,创建散点图,其中x坐标是Horsepower,而纵坐标是Miles_per_Gallon。可视化的图表中,还提供了可以直接下载的链接,我们可以选择保存图片,或者是在Vega在线编辑器中进行图片的编辑。
柱状图经常用来进行对比分析,非常直观。看一下它的程序和可视化结果如下图所示:![](https://filescdn.proginn.com/a4f7e795fffb759e6126e86f0de8833e/603ef31f72a35f7244c1b70797b5e60e.webp)
上图的程序中,在进行x轴数据的处理时,Altair选择了Miles_per_Gallon进行处理,其中的bin参数是通过创建的BinParams对象来建立,其中maxbins参数的意思是最多创建10个条形柱。而通过不同的原产地,可以很清楚的分辨出不同原产地的汽车耗油数量分布。同时,上述程序可以看出,Altair不需要其他库的支持,就可以创建出柱状图。如果大家想要按照不同的原产地,创建出不同的柱状图时,可以利用下面的程序来进行创建。
![](https://filescdn.proginn.com/31bf04609ba0b9db04f6b6a85500718f/9ca85171f8e532204d2cb4ed3d3ecc24.webp)
相比于上面的程序,这里的程序仅仅多添加了column='Origin'
这一句程序而已。是不是非常简洁,比起matplotlib的用法要简单多了,而且图片还非常漂亮!
除了数据的可视化之外,Altair还提供了交互的功能,例如下方程序中,程序提供了让用户选择区域,并进行数量统计的功能。![](https://filescdn.proginn.com/c973c8fa54c73e7dcca117b506fb9883/4cecc0315ac3a632433afa4de698a260.webp)
其动态交互的可视化功能如下所示:
上图中可以看出,通过不断的选择区域,程序会自动的帮助我们计算选择的区域中,不同类别的数量,并通过下方的横向柱状图直观的展现出来,这项功能可以更加方便的帮助我们理解不同范围下的数据分布差异,在数据分析中有很大的帮助。
为了更好的将Altair与我们的实际相结合,这里我运用之前发表文章中的抓取到的《青春有你》中,108位小姐姐的信息,来看一下如何运用Altair来做一个直观的可视化。
![](https://filescdn.proginn.com/75947aee9432044c5038f6ac3cfdc0ff/4df602736565eef5565c70434d7acf31.webp)
先来回顾一下108位小姐姐的数据信息:
![](https://filescdn.proginn.com/1e51af01cd702491145989d3ddcdb335/b3ff801dac0bac4612fa35baf22fc900.webp)
然后,我们利用Altair来做一个交互式的可视化,程序如下所示:
![](https://filescdn.proginn.com/13d7126fb0b15c18ec9e9b629c2c5c3e/6284c04c843470dfefb8a6b1d2144a0d.webp)
上图程序中,根据读入数据中,小姐姐们的身高和体重来创建横纵坐标,根据小姐姐们的年龄来区别颜色,创建一个点图。然后创建一个柱状图与上面的点图产生联动。其效果如下图所示:
![](https://filescdn.proginn.com/281ae7810a945c9d4d1abd122b5388a0/9095c523fbf9e1020ad1b870fabf904b.webp)
可以看到,通过交互来划定不同的区域时,下方的柱状图会显示出所选择区域中不同年龄数量的分布,可以看出:
通过这样的直观交互,可以让我们从数据中更加直观的获取到我们想要获取得到的信息。
以上就是小编带给大家关于Altair的分享,Altair相比于其他的可视化神器,具有强大的交互功能,能够更加帮助使用者窥探到数据中的信息,大家也赶快安装Altair来进行交互体验吧。
最后给大家免费分享入门Python的最强三件套:《ThinkPython》、《简明Python教程》、《Python进阶》的PDF电子版。如果你是刚入门的小白,不用想了,这是最好的学习教材。现在免费分享出来,有需要的读者可以下载学习,在下面的公众号 菜鸟编程大本营 里回复关键字:Python,就行。