数据可视化,我习惯于用这些工具
共 3100字,需浏览 7分钟
·
2020-12-27 22:51
导读
可视化之于数据分析流程中的重要意义不言而喻,它往往是体现数据分析报告的决定性一环,图表做的好、涨薪少不了。本文针对在完成数据分析过程中,介绍个人习惯运用的那些数据可视化工具。
本文主要涵盖数据可视化工具主要包括4类:Excel图表、Python绘图库、Tableau以及网页在线工具等。
网传数据分析师必备基础套餐是ESP,即Excel+SQL+Python,这种说法不见得完全正确,但也确有一定道理,其中Excel更是几乎每名数据分析师乃至每名职场人士必备的办公工具。个人也习惯于应用Excel,更具体说主要是应用Excel的三类功能:图表制作、内置函数以及数据透视表。一般而言,当数据量较小(100以内)时,个人非常倾向于用Excel完成图表插入,不仅简洁方便,而且内置的多种样式、丰富的设置选项以及所见即所得的制图体验,都无疑是小数据量作图的首选。
Excel内置了丰富的图表类型
Excel支持的图表类型也极为丰富,除了常规的条形图、折线图、饼图和散点图之外,像雷达图、旭日图、箱线图等视觉效果更好的图表也是支持的。同时更是支持了丰富的设置效果,而且都是极为简便易懂的,几乎不需要教程即可摸索掌握。
作为一名数据分析师,Python几乎是必须掌握的;而在Python数据分析相关的众多第三方包中,可视化库又非常强大。在这其中,个人尤为常用的有5个相关库:
matplotlib,该库与numpy和pandas号称Python数分三剑客,也是当初配合numpy和scipy替代Matlab的重要一环,几乎是Python数据分析过程中必须熟练掌握的绘图库。不过需要承认的是,matplotlib功能强大,但其实相对更加偏向底层,提供了大量的参数和接口来设置图表各种细节,对于初学者来说并不那么友好。但实话说,在彻底掌握其核心思想之后,其实还是比较符合正常思维的。这里,附个人总结的matplotlib完整入门教程:python数据科学系列:matplotlib入门详细教程
seaborn,既然matplotlib过于偏向底层,绘图也较为繁琐,那有没有简单易上手的绘图库呢?seaborn其实算得上一个,不过也并不算是matplotlib的升级或替代品,而只能算是有力补充。相较而言,seaborn基于matplotlib,提供了更为丰富的样式,具有更加简洁的API接口,一两句代码就能完成非常强大的图表绘制。附seaborn入门教程:python数据科学系列:seaborn入门详细教程
pyecharts,相较于matplotlib和seaborn这种更像是python官方绘图库,pyecharts属于纯粹的第三方绘图库,即pyecharts=python+echarts,即百度echarts与python的结合体,某种程度上也再次印证了python胶水语言的特性。更重要的是,pyecharts支持动态图表绘制,支持交互式图表,除了Web展示,还可通过一定操作移植到PPT中,这也为数据分析师做汇报添彩不少。pyecharts目前经历了两个大的版本,尤其是在0.5升级到1.x以后,几乎完全变了绘图接口,但整体来说是变得更加简洁易懂。附pyecharts绘图简洁教程:pyecharts极简入门教程
pandas,与matplotlib同享数分三剑客的美誉,而且更有瑞士军刀名号的pandas,实际上也是一个非常便捷的绘图库。更准确地说,这是一个面向dataframe对象的绘图接口,通过调用plot()接口或者plot属性,从而可以完成主流matplotlib中图表的绘制,且几乎继承了matplotlib中相应图表的所有参数设置,包括设置多子图绘制等,简直不能更丝滑。近期,随着版本的升级,pandas绘图后端更是可以指定其他绘图底层接口,使用起来极为方便。想象一下:你在操作着dataframe的各种处理和转换,突然想看看当前处理的数据什么样,那么就一言不合就来个图表。简单的pandas绘图方法可查看pandas教程中的最后一部分。
geopandas,geopandas是一个继承自pandas的地理信息数据处理库,其核心数据接口geodataframe本质上就是在pandas的dataframe数据结构上增加一列geometry,体现空间信息。除了继承了pandas的各种数据处理接口外,geopandas还增强了画图功能,在一个具有geometry列信息的geodataframe中,直接调用.plot()接口,即可快速查看当前地理信息情况。下图是混用matplotlib和geopandas.plot()的直接绘图结果,仅需额外设置用于标识数值大小的一列,即可绘制五颜六色的炫丽图片。(当前选用颜色风格为rainbow,可明显看出颜色从深到浅依次为红橙黄绿青蓝紫)
曾经,为了丰富个人可视化技能、拓宽数据分析工具,也专门花了一段时间学习tableau的运用,这可能也是商业数据分析师的必备技能之一,不过个人目前也仅仅是偶尔用它画个图而已。tableau本身功能还是极其强大的,支持多种数据源读取、内置了类SQL的字段处理功能、提供了丰富的图表库,工作表->仪表板->故事,三者层层递进,对于大屏展示和快速完成数据分析可视化报表异常高效,尤为擅长周期性动态监管的数据指标类仪表板。灵活的数据加载、强大的数据转换、简单的字段拖拽即可出图,这些都保证了快速生成报表的可能性。附个人常用的tableau制图技巧:
随着信息技术的不断成熟,其实很多数据可视化工作也逐渐搬移到线上轻量级完成,一些网页在线工具专门用于执行数据可视化,通过简单的灌入数据,一张张样式丰富的图表便很快呈现,而且大多都是零门槛易实现。这里仅列举两个:
百度Echarts,这真算的上是百度的一个良心工具了,内置了大量的图表模板,仅需选定样式->更改数据即可轻松实现,而且支持交互。前面介绍的pyecharts其实就是百度Echarts的Python语言版
词云在线网站。其实词云在线网站还是比较多的,这里不具体给出,可参考历史文章生成词云的几种方式查看。值得指出的是,本公众号的logo其实就是基于其中的一个网站生成的……
数据可视化对于一名数据分析师而言确实很重要,好的可视化效果甚至称得上是安身立命装X加薪之本。然而,虽然可视化图表选择众多,但其实也不能过于追求标新立异,例如桑基图、瀑布图、南丁格尔图等,特定场景下用用可能效果感人,但绝大多数情况下,Simple is better than complex,折线图、条形图、饼图、散点图这四大基本图表类型仍然是朴实无华的首选。
相关阅读: