「Python」Python可视化库你知道多少?一文带你深入探讨


「Python」Python可视化库你知道多少?一文带你深入探讨
文章图片
「Python」Python可视化库你知道多少?一文带你深入探讨
文章图片
「Python」Python可视化库你知道多少?一文带你深入探讨
文章图片
「Python」Python可视化库你知道多少?一文带你深入探讨
文章图片

前言现如今大数据已人尽皆知 , 但在这个信息大爆炸的时代里 , 空有海量数据是无实际使用价值 , 更不要说帮助管理者进行业务决策 。 那么数据有什么价值呢?用什么样的手段才能把数据的价值直观而清晰的表达出来?
答案是要提供像人眼一样的直觉的、交互的和反应灵敏的可视化环境 。 数据可视化将技术与艺术完美结合 , 借助图形化的手段 , 清晰有效地传达与沟通信息 , 直观、形象地显示海量的数据和信息 , 并进行交互处理 。
数据可视化的应用十分广泛几乎可以应用于自然科学、工程技术、金融、通信和商业等各种领域 。 下面我们基于Python , 详细的介绍一下适用于各个领域的几个实用的可视化库 , 快速带你入门!!
接下来 , 先用一张总体图概述可视化库之间的关系 , 随后会根据各种可视化库的支持图形类型 , 支持数据规模等维度对可视化库具体分析 , 并展开一一道来 , 让无论初学者还是架构师都能了解可视化库的各种前世今生的关系 , 利于掌握和架构自己程序 。
python可视化库大阅兵
在图中 , 您可以看到几个主要的库组 , 每个库都有不同的起源 , 历史和焦点 。 一个明显可分离的组是用于可视化物理数据的“ SciVis ”库(在图的左下方) 。 这些工具(VisPy , glumpy , GR , Mayavi , ParaView , VTK和yt)主要基于1992年OpenGL图形标准 , 提供三维或四维物理过程的图形可视化(3D随时间变化) , 用于常规或不规则网格化数据 。 这些库早于HTML5对Web应用程序的支持 , 通常侧重于工程或科学环境中的高性能桌面GUI应用程序 。
其他几乎所有的库都属于“ InfoVis ” , 专注于任意空间中信息的可视化 , 而不一定是三维物理世界 。 InfoVis库使用打印页面或计算机屏幕的两个维度来使抽象空间可解释 , 通常使用轴和标签 。 InfoVis库可以进一步细分为多个子组:
Matplotlib
2003年发布的最古老 , 最受欢迎的InfoVis库之一 , 具有广泛的2D绘图类型和输出格式 。 Matplotlib还早于HTML5对丰富的Web应用程序的支持 , 而是使用桌面GUI工具包(如Qt和GTK)将重点放在静态图像上以及交互式图形上 。 Matplotlib包含一些3D支持 , 但比SciVis库提供的限制更多 。
基于Matplotlib多年来 , Matplotlib的2D绘图功能构建了各种工具 , 可以将其用作特定类型数据的渲染引擎 , 也可以用于特定领域(pandas , NetworkX , Cartopy , yt等) , 或提供更高级别的API可以简化绘图创建(ggplot , plotnine , HoloViews , GeoViews) , 或者使用其他类型的绘图(seaborn等)扩展它 。
JavaScript
一旦HTML5在浏览器中实现了丰富的交互性 , 许多库就开始为网页和Jupyter笔记本提供交互式2D图 , 使用自定义JS(Bokeh , Toyplot)或主要包装现有的JS库 , 如D3(Plotly , bqplot) 。 包装现有的JS可以轻松添加为JS应用创建的图库(就像Plotly一样) , 而使用自定义JS可以定义更低级的JS基元 , 这些基元可以在Python中组合成全新的绘图类型(对于Bokeh) 。


推荐阅读