美文网首页
用Intersects方式联接地理数据

用Intersects方式联接地理数据

作者: 扫地sir | 来源:发表于2020-06-24 10:58 被阅读0次

    在数据联接界面中,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方式联接地理数据

          本文链接:https://www.haomeiwen.com/subject/otalfktx.html