今天我们来画圆弧图,英文名字是Arc Chart
![](https://img.haomeiwen.com/i13953618/f5e6349c67f4ee8d.png)
http://toanhoang.com/arc-chart-tableau-tutorial/
大家可以访问以下这个大神的博客http://toanhoang.com/arc-chart-tableau-tutorial/,上面有数据集和实现的方法,他实现的方法就是用数据桶加表计算的方式(特别说一下Tableau Public上基本都是这种方式,优点是灵活性很高,缺点是初学者理解起来稍微有点困难)
我们来用自己方式模拟一下。
首先就是调整原有的数据集,删除path字段中181的行,然后删除path字段,增加link字段,形成下表
![](https://img.haomeiwen.com/i13953618/2df23e88c38283ce.png)
构造一张point表,值是0-180(因为要画半圆)
引入Tableau,用内连接连接两张表,构造出新表
![](https://img.haomeiwen.com/i13953618/f1691ac27b8ef13b.png)
默认已经看过前文了,具体不理解的请参照前文
然后还得复习一下前面的知识
圆上每个点的X坐标=a + sin(2*PI / 360*角度) * r ;Y坐标=b + cos(2*PI / 360*角度) * r
前面三节都是同心圆,没有涉及过改变圆心,所以a和b就没有用到,这次就用上了
首先构建[R](首尾值相减除以2):([End Point]-[Start Point])/2
构建圆心[center](这个自己理解一下):[Start Point]+[R]
这两个关键值做好了,老规矩就要构建sin和cos了
构建[sin](这个没有什么特别的):SIN([point]*PI()/180)*[R]
构建[cos]:[center]+COS([point]*PI()/180)*[R]
这里只有cos才用上center,因为通常我们用cos做横轴(当然也可以用sin做横轴,但是point就不是从0-180开始了,有心的同学可以自己研究一下),圆心是沿着横轴移动,所以只需要改变横轴。
下面步骤不说了,上图了
![](https://img.haomeiwen.com/i13953618/4ac16d9e0ecfa222.png)
好了,就剩美化了
![](https://img.haomeiwen.com/i13953618/d83d91d2b3091ec8.png)
大致就是这个样子了
后面还有一种圆弧图,也很好构建,我们下次再讲
![](https://img.haomeiwen.com/i13953618/4c3f7d19da9b758c.png)
作者:扫地sir
链接:https://www.jianshu.com/p/4ed3c561811a
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
网友评论