用Intersects方式联接地理数据

在数据联接界面中,Intersects(相交)联接方式几乎不太引人注意,但是它对于处理空间地理文件特别有用处。

比如,Tableau国内2020 年第四期 Viz Challenge“2011 年至 2017 年北京房价”的数据集中,只有经纬度数据,那么如果我们想要分析区县维度,但数据中又没有,那怎么办呢?

这时候,Intersects联接方式就能派上大用场了。

原文:https://mp.weixin.qq.com/s/OBLEwOczWMuO0W6rC6pfVw

首先大家可以去下载房价的数据集。

然后,打开阿里的DATAV.GeoAtlas地图选择器,下载北京市(含区县)的geojson空间文件。

http://datav.aliyun.com/tools/atlas/#&lat=32.95336814579932&lng=87.8466796875&zoom=4

用tableau联接两个数据集,

左边房价数据源选择“编辑联接计算”,

  • MAKEPOINT([Lat],[Lng])

右边北京.json数据源联接字段选择“几何”,

中间联接条件选择“Intersects”和左连接,如下图

这样就可以根据数据集中的经纬度匹配区县了,在新生成的数据集中的Name字段就是匹配好的区县信息。

我们还可以做一些更有意思的操作,比如,房价数据集有30多万条数据,如果我只想要以天安门为中心,半径10公里以内的数据,那该怎么操作呢?

我们新建一个数据集,标记好天安门的经纬度。

address,lat1,lng1
天安门,39.90729651,116.3912024

同样导入两个数据集做联接。

左边房价数据源选择“编辑联接计算”,

  • MAKEPOINT([Lat],[Lng])

右边天安门.csv数据源选择“编辑联接计算”,

  • BUFFER(MAKEPOINT([Lat1],[Lng1]),10,'km')

中间联接条件选择“Intersects”和内连接,如下图。

这时,数据集已经被BUFFER函数筛选后,只剩下距离天安门10公里以内的数据了。

是不是很有意思,快试试吧。

此篇文章已发布到我的公众号: saodisir,有兴趣也可关注一下

你可能感兴趣的:(用Intersects方式联接地理数据)