本文参考扫地sir老师的文章《用Tableau画曲线图系列(一)基础知识》
参考图1、构造数据源
每一条曲线是由若干个点构成的,每个点都有X、Y坐标值,每一个item对应一条曲线。因此,对于原始数据源中的每一条item(行记录),要先想办法先对其进行复制,一般2种方法:表关联、数据桶。本文使用表关联的方法。若曲线由49个点构成,那么,path的取值为【1-49】。
2、公式原理
构造好数据源之后,可以用的度量为:预测排名、实际排名、path,如何根据这3个值进一步去构造t、sigmoid呢?其中t的取值为【-6,+6】,sigmoid的取值为【0,1】。
计算T
- path【1,49】,转化为,t【-6,6】,这2个变量的映射关系为直线型,经过推导可得,t = (path-25)/4。
- 补充说明:由【1,49】转化为【-6,6】,可知映射关系为直线,其中斜率k=(6-(-6))/(#point-1),#point即为点数49,此外该直线经过点(1,-6),所以可推导出关系式:T = -6 + (path-1)*(6-(-6))/(#point-1)。
计算sigmoid
sigmoid的值,根据sigmoid函数直接获得,sigmoid = 1/(1+EXP(-t))。
计算Y
sigmoid的值为【0,1】,那么,sigmoid*C的值为【0,C】,即C为曲线的波动差值,K+sigmoid*C,表示将整个曲线沿着y轴上下移动K个单位。那么,最终的Y值表示为,Y = 起始值+sigmoid*(终止值-起始值)。
计算X
需要说明的是,本文画的是标准sigmoid曲线以及其在y轴上的变形,因此X值就等于t值,X=t 。如果作图时,根据应用场景需要将X值限制在【Xstart,Xend】的范围,那么,根据path值转化为T的原理,同理可获得关系式:X = Xstart + (path-1)*(Xend-Xstart)/(#point-1)。
3、作图
- X字段拖到列、Y字段拖到行;
- 标记类型选择“线”,path字段拖到“路径”,并在标记选项卡中将该字段转换为“维度”;
- 国家字段拖到“颜色”
网友评论