做最具实战的
数据科学职业社区

python实现地址分布可视化

当你知道某些详细地址信息,该如何利用?

本文通过调用百度地图接口,实现用户可视化展示,便于更清楚地了解用户。

1065162472-556a83ba62e47_articlex

注册百度地图开放平台帐号


首先先到http://developer.baidu.com/map/上注册一个开发者帐号,然后找到Web服务API下的Geocoding API,如下图所示:
118422062-556a79bfde4b4_articlex

Python调用


通过http调用接口格式如下:

http://api.map.baidu.com/geocoder/v2/?address=百度大厦&output=json&ak=E4805d16520de693a3fe707cdc962045&callback=showLocation

利用python批量调用,先定义一个函数:

def getlnglat(address):
    url = 'http://api.map.baidu.com/geocoder/v2/'
    output = 'json'
    ak = '[*百度开发平台上申请的*]'
    uri = url + '?' + 'address=' + address + '&output=' + output + '&ak=' + ak
    temp = urllib.urlopen(uri)
    temp = json.loads(temp.read())
    return temp

接下来就可以通过调用该函数去批量处理地址数据,并将相应的结果存入到数据库中。
1764731744-556a81f26135b_articlex
百度地图接口这点确实做的不错,返回的结果中包含两个相当有用的信息,一个是置信度(可以简单理解为计算结果的准确性),另一个是地址类型,即标识某个地址是商务大厦、村庄、道路、宾馆等一些语义化的标签。

Tableau数据可视化


Tableau的可视化功能较为方便和强大,以下是基于刚才处理后的数据得到的相应的可视化图:

整体分布图

1065162472-556a83ba62e47_articlex

局部分布图

2003824351-556a84107537f_articlex

有了这样一幅图,大家就可以很清楚地了解用户:住哪 、那个小区,周边商业环境等相关信息。基于此,在移动互联网环境下,我们也可以发现其它的机会点,如果某个小区或者大厦有很多人使用应用,可以基于此部分用户做专门的分析,观察这部分用户的时间信息流,想像一下千万溪流汇聚成大海,大海就是我们观察到的小区或者厦,溪河就是可能的商业机会,大的溪河需要重点挖掘,小的溪河看潜力。

来源:segmentfault    作者: tomliu

注:数据科学网遵循行业规范,任何转载的稿件都会明确标注作者和来源,若标注有误或遗漏,请联系主编邮箱:admin@idatacamp.com
数据科学 » python实现地址分布可视化
分享到: 更多 (0)

吐槽 抢沙发

评论前必须登录!