美文网首页工作生活
用Tableau画有趣的点状地图

用Tableau画有趣的点状地图

作者: 扫地sir | 来源:发表于2019-07-03 15:25 被阅读0次

    前两天听了一次tableau官方的在线课程,有个六边形地图的案例挺有意思,但是官方没有提供这次课程的文件。不过看到Andy Kriebel在public上放出了一个作品Fun with Maps,介绍了制作方法,大家可以去下载学习。

    https://public.tableau.com/profile/andy.kriebel#!/vizhome/FunwithMaps/Maps

    最上面的两这个地图就是常用的点状图和密度图,一般来说能够解决大部分问题。但是有时候在点状图和密度图不能明显的得出一些结论的时候,也可以尝试用下面的方法。

    方法1 Round函数

    • 新建一个参数Rounding Parameter

    四舍五入的位数

    创建计算字段

    • Round Lat=ROUND([Latitude],[Rounding Parameter])
    • Round Lon=ROUND([Longitude],[Rounding Parameter])

    通过四舍五入,目的是将位置相近的经纬度分组,减小数据的颗粒度

    • 将[Round Lat]拖到行功能区,[Round Lat]拖到列功能区,记录数拖到颜色(如果这时候数据是集中在一起的,也可以尝试取消聚合或者手工编辑轴的范围)
    • 这时可以手工调整[Rounding Parameter]的大小,调整效果,也可以自己选择方形或者其他自定义图形

    方法2 HEXBINX和HEXBINY函数

    • 新建一个参数HexBin Parameter

    创建计算字段

    • HexX=
      HEXBINX([Longitude]*[HexBin Parameter],[Latitude]*[HexBin Parameter])
    • HexY=
      HEXBINY([Longitude]*[HexBin Parameter],[Latitude]*[HexBin Parameter])

    官方解释:将 x、y 坐标映射到最接近的六边形数据桶的 x 坐标。数据桶的边长为 1,因此,可能需要相应地缩放输入。HEXBINX 和 HEXBINY 是用于六边形数据桶的分桶和标绘函数。六边形数据桶是对 x/y 平面(例如地图)中的数据进行可视化的有效而简洁的选项。由于数据桶是六边形的,因此每个数据桶都非常近似于一个圆,并最大程度地减少了从数据点到数据桶中心的距离变化。这使得聚类分析更加准确并且能提供有用的信息。

    • 将[HexX]拖到列功能区,[HexY]拖到行功能区,记录数拖到颜色
    • 这时可以手工调整[HexBin Parameter]的大小,调整效果,也可以自己选择方形或者其他自定义图形,效果和round函数基本是一样的。

    这种地图形式,实际上无法与地图背景结合,所以要根据实际应用场景取舍,对于大家比较熟悉的地图可以采用这种方式,Tableau的官方微信号《Tableau社区》有个美国地图的例子,我觉得就很好。

    https://mp.weixin.qq.com/s?__biz=MzI0MTAyMjY0Ng%3D%3D&idx=1&mid=2652883477&sn=20d1e21913442fe67eb4d8d309d78f1b

    另外,官方扩展库里也有一个Mapbox的扩展也能实现类似的功能,而且可以结合背景地图,效果很不错。大家有兴趣可以研究一下,目前只支持Tableau Desktop for Mac,因为没有苹果电脑,我用虚拟机试了一下,不是提别稳定,而且和其他图表交互也不是很好,仅供参考。

    https://extensiongallery.tableau.com/products/41

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

    相关文章

      网友评论

        本文标题:用Tableau画有趣的点状地图

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