前两天听了一次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社区》有个美国地图的例子,我觉得就很好。
