最近和鲸社区的大佬们,竟不约而同地写起了可视化库的教程,开始了掰头
※完整教程列表在文末附录
虽然对于我们这种吃瓜群众来说是件好事,但
大概大佬的快乐往往就是那么的朴实无华且枯燥吧。害,管他呢,赶紧拿出来给大家瞅瞅。
今天提及的5个Python可视化库分别是 Matplotlib · Seaborn · Bokeh · Plotly · Pyecharts。
其实单独看后4个库,每个都是炫酷的代名词,但既然今天大家都同框了,方小鲸就简单地将他们做个比较,从4个方面看看他们之间的区别,以便大家各取所需的学到适合自己的可视化库。
这一部分使用5个库可视化了同一组数据, 我们同时展示了可视化这组数据时需要的代码,以及可视化之后,默认呈现的一些功能。通过这些,我们可以了解到这些库的语言风格,以及对它出图的效果产生一定的预期。
从以上的结果看来,Seaborn如果不选用样式,那么效果和matplotlib无二;Bokeh好看了那么一丢丢,自带图片的缩放功能;Plotly和Pyecharts的代码复杂程度稍有增加,但是提供的标签效果好看
有些同学,诉求可能仅仅是画出高精度的图片,用于撰写论文;而有些同学需要对地图数据进行操作,故需要特定功能;又有些同学,需要炫酷的交互来展示海量数据。
所以,方小鲸去这几个库的官网gallery逛了一下,针对本鲸比较关注的几个功能做了整理统计。
○支持的不是很好
可以得出的结论是,Seaborn就是个Matplotlib的封装,功能比较有限;Pyecharts虽然动效做的好看,但是控件无法定制;Bokeh控件玩法多样,但输在做3D和动画要装插件;相较之下Plotly在功能上完胜。
为了让大家更深刻地理解这些库,本鲸找了一些炫酷的作品,希望可以给大家带来视觉上的冲击,从而更有动力地学习这些库。
Matplotlib是Python数据可视化库中的泰斗,它已经成为python中公认的数据可视化工具,通过Matplotlib可以很方便的设计和输出二维以及三维的数据,其提供了常规的笛卡尔坐标,极坐标,球坐标,三维坐标等,其输出的图片质量也达到了科技论文中的印刷质量,日常的基本绘图更不在话下。
5分钟上手Matplotlibwww.kesci.comSeaborn是基于matplotlib的图形可视化python包,它在matplotlib的基础上进行了更高级的API封装,提供了一种高度交互式界面,从而使得作图更加容易,便于用户能够做出各种有吸引力的统计图表。它能高度兼容numpy与pandas数据结构以及scipy与statsmodels等统计模式。
Seaborn利用matplotlib的强大功能,几行代码就能创建漂亮的图表。其与matplotlib主要的区别是Seaborn的默认样式以及更美观、更现代的调色板设计。
Python数据可视化方法之Seabornwww.kesci.comBokeh是一个专门针对Web浏览器的呈现功能的交互式可视化Python库,支持现代化web浏览器展示(图表可以输出为JSON对象,HTML文档或者可交互的网络应用),这是Bokeh与其它可视化库最核心的区别。它提供风格优雅、简洁的D3.js的图形化样式,并将此功能扩展到高性能交互的数据集,数据流上。使用Bokeh可以快速便捷地创建交互式绘图、仪表板和数据应用程序等。
Bokeh能与NumPy,Pandas,Blaze等大部分数组或表格式的数据结构完美结合。
Bokeh教程学习www.kesci.comPlotly是一个开源,交互式和基于浏览器的Python图形库,可以创建能在仪表板或网站中使用的交互式图表(可以将它们保存为html文件或静态图像)。Plotly基于plotly.js,而plotly.js又基于D3.js,因此它是一个高级图表库,与Bokeh一样,Plotly的强项是制作交互式图 ,有超过30种图表类型, 提供了一些在大多数库中没有的图表 ,如等高线图、树状图、科学图表、统计图表、3D图表、金融图表等。plotly绘制的图能直接在jupyter中查看,也能保存为离线网页,或者保存在http://plot.ly云端服务器内,以便在线查看。
Plotly入门教程www.kesci.comPyecharts是基于 Echarts 开发的,是一个用于生成 Echarts 图表的类库。Echarts 是百度开源的一个数据可视化 JS 库,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。更重要的是,该库的文档全部由中文撰写,对英文不是很好的开发者尤其友好。而Pyecharts,实际上就是 Echarts 与 Python 的对接。
【pyecharts教程】应该是全网最全的教程了~www.kesci.com这里是文中未提及,但是也很神仙的一些可视化相关链接
【matplotlib】Matplotlib可视化教程~
python--matplotlib数据可视化
50题matplotlib从入门到精通
【美人图】5分钟上手Matplotlib
Python数据可视化方法之matplotlib
matplotlib数据可视化
plotly教程【持续更新中】
是时候用plotly代替matplotlib
Plotly入门教程
seaborn可视化学习之 categorial visualization
seaborn可视化学习之distribution visualization
seaborn可视化之time series & regression & heatmap
【Seaborn可视化】一文掌握Seaborn可视化
【pyecharts教程】应该是全网最全的教程了~
【Pyecharts教程1】让你的图表动起来~
【Pyecharts教程2】如何让你的图表不那么单调~
【可视化系列2】pyecharts交互式可视化巩固训练
炫酷的可视化工具包----cufflinks
嗨~介绍一款地理数据可视化神器—keplergl
台风数据分析-高德地图/Geopandas
python分析--可视化地图folium库使用示例
Sigma.js网络图标Demo