深度盘点 | 史上最全python数据可视化库
官网:
https://matplotlib.org
优点:绘图质量高,可绘制出版物质量级别的图形。代码够简单,易于理解和扩展,使绘图变得轻松,通过Matplotlib可以很轻松地画一些或简单或复杂的图形,几行代码即可生成直方图、条形图、散点图、密度图等等,最重要的是免费和开源。
▌02 Pandas
官网:
https://pandas.pydata.org/ 👉
优点:Pandas是Python的核心数据分析支持库,提供了快速、灵活、明确的数据结构,旨在简单、直观的处理关系型、标记型数据。
▌03 Seaborn
官网:
https://seaborn.pydata.org/
优点:Seaborn利用matplotlib的强大功能,几行代码就能创建漂亮的图表。其与matplotlib主要的区别是Seaborn的默认样式以及更美观、更现代的调色板设计。
▌04 Scikit-plot
官网:
https://pypi.org/project/scikit-plot/
优点:Scikit-Plot是由ReiichiroNakano创建的用在机器学习的可视化工具,能最快速简洁的画出用Matplotlib要写很多行语句才能画出的图。
▌05 Yellowbrick
官网:
https://www.scikit-yb.org/en/latest/
优点:这是一款基于sklearn+matplotlib模块构建的更加高级的可视化工具,能够更加方便地完成很多数据探索、分词与展示工作。
▌06 Networkx
官网 :
https://networkx.github.io/documentation/stable/tutorial.html
优点:NetworkX是一个Python包,用于创建、操纵和研究复杂网络的结构、以及学习复杂网络的结构、功能及其动力学。
▌07 Vega
官网:
https://vega.github.io/vega
优点:Vega是一种可视化语法,用于创建、保存和共享交互式可视化设计的声明式语言。使用Vega,我们能够以jsON格式描述可视化的视觉外观和交互行为,并使用Canvas或SVG生成基于Web的视图。
▌08 D3js
官网:
https://d3js.org
优点:D3.js是目前市场上最好的数据可视化库之一,既可以将它与python一起使用,也可以与R一起使用。最初,它可以与JavaScript一起使用,根据数据操作文档。您可以使用HTML,SVG和CSS将数据变成活灵活现的图表。
▌09 Mpld3
官网:
https://mpld3.github.io/
优点:mpld3基于python的graphinglibrary和D3js,汇集了Matplotlib流行的项目的JavaScript库,用于创建web交互式数据可视化。
▌010 Vincent
官 网:
https://vincent.readthedocs.io/en/lates/
优点:Vincent是一个很酷的可视化工具,它以Python数据结构作为数据源,然后把它翻译成Vega可视化语法,并且能够在d3.js上运行。这让你可以使用Python脚本来创建漂亮的3D图形来展示你的数据。Vincent底层使用Pandas和DataFrames数据,并且支持大量的图表—-条形图、线图、散点图、热力图、堆条图、分组条形图、饼图、圈图、地图等等。
▌011 Altair
官网:
https://altair-viz.github.io/
优点:Altair是Python的一个公认的统计可视化库。它的API简单、友好、一致,并建立在强大的vega-lite(交互式图形语法)之上。
▌012 OpenGL
官网:
https://www.opengl.org/
优点:OpenGL是一个开放的三维图形软件包,它独立于窗口系统和操作系统,以它为基础开发 的应用程序可以十分方便地在各种平台间移植。
▌013 Vispy
官网:
https://vispy.org/index.html
优点:VisPy是一个用于交互式科学可视化的Python库,快速、可伸缩、且易于使用,是一个高性能的交互式2维,3维数据可视化库,利用了现代图形处理单元(gpu)的计算能力,通过OpenGL库来显示非常大的数据集。
▌014 Glumpy
官网:
http://glumpy.github.io/
优点:Glumpy使用OpenGL纹理(textures)来表示阵列,因为这恐怕是在现代图形硬件上最快的可视化方法了。
▌015 Vaex
官网:
https://vaex.readthedocs.io/en/latest/
优点:Vaex是一个开源的DataFrame库,它可以对表格数据集进行可视化、探索、分析,可视化使用直方图、使用直方图、密度图和3D立体渲染进行可视化。
▌016 Datashader
官网:
https://datashader.org/
优点:Datashader是一个图形管道系统,用于快速,灵活地创建大型数据集的有意义的表示形式。
▌017 Ipyvolume
官 网 :
https://github.com/maartenbreddels/ipyvolume
优点:IPyvolume是对3维数据的可视化,matplotlib是对2维数据的可视化。
▌018 Ipyleaflet
官 网 :
https://github.com/doclements/ipyleaflet
优点:ipyleaflet是基于leaflet的地图显示模块,提供了jupyterlab支持。ipyleaflet可进行地图动态显示,图形添加等。
▌019 Pythreejs
官 网 :
https://pypi.org/project/pythreejs/0.2.0/
优点:Pythreejs是基于Jupyter,连接python和threejs的一个3d可视化图形库。
▌020 Bokeh
官网:
https://bokeh.pydata.org/en/latest/
优点:Bokeh是一个专门针对Web浏览器的呈现功能的交互式可视化Python库,支持现代化web浏览器展示,Bokeh能与NumPy,Pandas,Blaze等大部分数组或表格式的数据结构完美结合。
▌021 Toyplot
官 网 :
https://toyplot.readthedocs.io/en/stable/
优点:Toyplot是一个Python的交互式绘图库,可用于数据可视化、绘图、文字,用各种形式展示。
▌022 Cufflinks
官 网 :
https://github.com/santosjorge/cufflinks
优点:Cufflinks将Plotly直接绑定到pandas数据帧。这种组合非常惊人,结合了Pandas的灵活性,比Plotly更有效,语法甚至比plotly简单。
▌023 Plotly
官网:
https://plot.ly/python/
优点:Plotly是一个开源,交互式和基于浏览器的Python图形库,可以创建能在仪表板或网站中使用的交互式图表(可以将它们保存为html文件或静态图像)。
▌024 Pygal
官网:
https://www.pygal.org/en/stable
优点:pygal是一种开放标准的矢量图形语言,它基于XML(ExtensibleMarkupLanguage),可以生成多个输出格式的高分辨率Web图形页面,还支持给定数据的html表导出。
▌025 Chaco
官网:
https://pypi.org/project/chaco
优点:Chaco 和 Matplotlib 是很优秀的 2D 绘图库, Chaco 库和 Traits 库紧密相连,方便制作动态交互式的图表功能。
▌026 pyQTgraph
官网:
https://www.pyqtgraph.org/
优点:PyQtGraph是在PyQt4/PySide和numpy上构建的纯python的GUI图形库。PyQtGraph完全是在python中编写的,是一个非常有能力的图形系统,可以进行大量的数据处理,数字运算;使用了Qt的GraphicsView框架优化和简化了工作流程,实现以最少的工作量完成数据可视化,且速度也非常快。
▌027 Pyecharts
官 网 :
https://github.com/pyecharts/pyecharts/
优点:pyecharts是基于Echarts开发的,是一个用于生成Echarts图表的类库。Echarts是百度开源的一个数据可视化JS库,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。
▌028 Wordcloud
官网:
https://amueller.github.io/word_cloud/
优点:wordcloud基于Python的词云生成类库。词云图,也叫文字云,是对文本中出现频率较高的“关键词”予以视觉化的展现,词云图过滤掉大量的低频低质的文本信息,使得浏览者只要一眼扫过文本就可领略文本的主旨。
▌029 Ggplot
官网:
https://ggplot.yhathq.com/
优点:ggplot是基于R的ggplot2和图形语法的Python的绘图系统,实现了更少的代码绘制更专业的图形。
▌030 Geoplotlib
官 网 :
https://residentmario.github.io/geoplot/index.html
优点:geoplotlib是python的一个用于地理数据可视化和绘制地图的工具箱,你可以用它来创建各种各样的地图类型,比如等值线图、热图和点密度地图。
▌031 Folium
官 网 :
https://github.com/python-visualization/folium
优点:Folium是一个建立在Python系统之上的js库,集Python生态系统的数据优势和Leaflet.js库的映射优势之上。既可以在python中操作数据,然后通过folium在Leaflet地图中将其可视化,还可自定义箭头,网格等HTML格式的地图标记。
▌032 Missingno
官 网 :
https://www.github.com/ResidentMario/missingno
优点:missingno 是基于matplotlib建造的一个模块,出图速度很快,并且能够灵活的处理pandas数据,它允许你通过直观的总结快速衡量数据集的完整性,而不是艰难地浏览表格。你可以根据热图或树形图中的完成度或点相关来过滤和排序数据。
▌033 Leather
官网:
https://leather.rtfd.io
优点:Leather一种可读且用户界面友好的API,新手也能快速掌握。图像成品非常基础,适用于所有的数据类型,针对探索性图表进行了优化,产生与比例无关的SVG图,这样在你调整图像大小的时候就不会损失图像质量。
▌034 HoloViews
官网:
https://holoviews.org/
优点:HoloViews是一个开源的Python库,可以用非常少的代码行中完成数据分析和可视化,它将matplotlib和Bokeh结合了起来。
▌035 Mayavi2
官 网 :
https://docs.enthought.com/mayavi/mayavi
优点:Mayavi2是一个通用的、跨平台的三维科学数据可视化工具。可以在二维和三维空间中显示标量、向量和张量数据。可通过自定义源、模块和数据过滤器轻松扩展。
▌036 python-igraph
官网:
https://igraph.org/python/
优点:Python界面的igraph高性能图形库,主要针对复杂的网络研究和分析。这个主要是用于绘制关系图的。
▌037 gleam
官网:
https://gleam.io/
优点:Gleam允许只利用Python构建数据的交互式,生成可视化的网络应用。无需具备HTMLCSS或JaveScript知识,就能使用任一种Python可视化库控制输入。
▌038 YT
官网:
https://github.com/yt-project/yt
优点:yt是一个开源的、许可的python包,用于分析和可视化体积数据。
整理 | 小熊
排版 | 九尾
校对 | 兆锋
End