首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何选择合适的数据分析及可视化工具

主要内容

“近期练习了不少项目,也学习到了许多数据可视化工具,发现接触工具多了使用时会存在选择恐惧症的问题,现将各种可视化工具及其使用场景进行简要的概括。”

一、总论

就个人理解,数据可视化工具可以分为如下几个类型:基础数据可视化工具,空间数据可视化工具以及关系数据可视化工具。可能还有其他分类,欢迎指导!其中,基础数据可视化工具选择性最多,比如最常见的matplotlib、seaborn,还有bokeh,当然D3也是非常常用的(在项目中未曾使用,以后分析),此外还有集成度比较高的Tableau软件等。在空间数据可视化工具中,GIS、QGIS(轻量级)兼具空间统计建模分析与可视化展示,功能非常强大;当前一些利用js脚本编写的可视化工具也具有绚丽的空间可视化功能,但统计分析功能欠佳。在关系数据可视化方面,gelphi能够处理分析复杂的关系网络数据,兼具划分社区、聚类、计算最近邻等关系网络处理常见的操作。

为直观展示,现对项目过程中使用到的工具总结如下:

二、基础数据可视化

基础数据可视化可选工具是最多的,要根据需求灵活选择:

(一)matplotlib

matplotlib是python最基础的作图包,像seaborn等其它集成度更高的包中作图函数的**kw参数很多都是matplotlib的plot函数中的图形参数。从这一角度来看,matplotlib灵活度要更高,用其它包能实现的matplotlib也能实现。

(二)seaborn

seaborn包具备一定的统计可视化能力,如计算频数分布、数据密度曲线。图形参数大多来源于matplotlib,如boxplot画箱形图,hue参数用于分类,palette参数用于掉色盘,notch参数用于控制是否内陷,fliersize控制离群点的尺寸等等。

sns.boxplot(x=None,y=None,hue=None,data=None,order=None,

hue_order=None,orient=None,color=None,palette=None,

saturation=0.75,width=0.8,dodge=True,fliersize=5,

linewidth=None,whis=1.5,notch=False,ax=None,**kwargs)

图 船舱价格与船舱等级关系分析

但二者也仅仅局限在简单的统计可视化而已,要想实现更复杂的数据分析及可视化,还得先借助python进行数据清理、分析统计,然后再可视化。

(三)bokeh

bokeh是基于js开发的,在可视化上更灵活,记住js动作监听器机制,实现更强的交互能力,如legend的显隐、HoverTools动态提示等等,在要展示数据多的情况下,能够使图形界面更简洁,按需展示数据。

图 电商打折套路分析

可视化工具毕竟是可视化用的,不应要求其既具有极强的统计分析能力,又要求其具有极绚丽的可视化展示能力,部分软件可能集成度较高,在二者上都较为突出,但也丧失了可视化工具的灵活性。

三、空间数据可视化

(一)Qgis

这部分可查阅历史文章:利用QGIS进行空间数据分析。

(二)PowerMap

要求EXCEL2013以上版本,打开方式:插入-三维地图,界面如下:

项目相关效果图如下:

姓氏分布图(PowerMap)

(三)相关js工具

人口迁徙—2D空间轨迹图(js工具)

姓氏分布——热力图(js工具)

以上均是项目产品,通过python整理数据,导入制图模板生成。复杂的二维空间轨迹图需要借用geojson转换工具将qgis导出的shapefile数据转换为geojson数据后方能使用。从中可以上看出,基于js开发的可视化工具在展示上确实更加美观。

四、关系数据可视化

Gelphi是一款相当不错的关系数据分析软件。结合python数据清理,使用步骤可概括如下:

(一)利用python将数据整理成gelphi所需格式

边数据包括三个字段:source、target、value(固定的)

节点数据包括:id、label

边数据中的source、target都是节点数据中的id

(二)导入数据到gelphi

(三)调整节点/边的图形/标签的颜色、尺寸等属性,区分显示

(四)调整布局:防重叠等

(五)划分clique、community、聚类,计算最近邻等分析统计操作。

五、个人体会

1、数据分析及可视化工具层出不穷,不要拘泥某一种,谁好用用谁。

2、关键是清楚什么图形最能用于表达你的观点:如数据分布用密度图、直方图、条形图、箱型图,二维数据的相关性用散点图、折线图,多维数据相关性用小提琴图等。

3、最基础工具的图形参数要掌握很熟练,如matplotlib。

4、可视化是重点时,优先选择基于js开发的工具,效果可定制,更美观。

5、地理空间数据和关系数据分析工具及其插件涉及较多算法,可依需要学习,不必面面俱到。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180718G0IYMK00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券
http://www.vxiaotou.com