美文网首页个人学习
用Tableau制作滚动时间轴(下)

用Tableau制作滚动时间轴(下)

作者: 扫地sir | 来源:发表于2020-05-09 15:58 被阅读0次

    上一篇文章《用Tableau制作滚动时间轴(上)》我们介绍了滚动时间轴的基本制作方法。这篇文章我们继续丰富和美化时间轴。

    制作内容显示工作表

    由于数据集内有大量的文字描述内容,那么让这些内容显示到时间轴里,就不太现实了。需要单独建立一个工作表来显示文字内容。

    这里我们还需要一个筛选器来控制显示的内容,同时为了保证只选择圆点,显示相应文字,选择时间线不起作用的话,还需要一些额外操作。

    • 创建参数 Selected Event
    • Event Filter=
    IF [Event]=[Selected Event] THEN
        "Keep"
    ELSE
        "Exclude"
    END
    
    • 把[Event Filter]拖到[text]工作表的筛选器上,选择Keep。

    • 把[Event]拖到上一节制作的[timeline]工作表,形状轴上。

    • 新建参数动作

    到仪表板中合并工作表,就可以看到选择效果了。

    但是这里还有些bug,默认点选后是高亮显示,而取消选择以后,就无法显示文字内容,因为取消选择是无法起到传递参数作用的。

    改进筛选效果

    这个bug需要制作一个类似按钮的效果来解决,这个大家可以参考《如何制作提交按钮,实现多条件筛选》这篇文章。

    • 新建Toggle表
    Toggle
    1
    2
    
    • 做表链接

    为了这个按钮效果,我们把数据又扩充了一倍。

    • Toggle Next=IF [Toggle]= 1 then 2 ELSE 1 END

    • 将[Toggle Next]拖到[timeline]工作表,形状轴上

    • 添加筛选器操作

    这样,筛选的bug已经搞定了。

    美化时间轴

    新建计算字段

    • Event Year=
    {FIXED : MAX(
        IF [Event]=[Selected Event] THEN
            [Year (Year)]
        END
    )}
    
    • Shape=
    IF ISNULL([Event]) THEN
        "None"
    ELSEIF [Year (Year)] > [Event Year] THEN
        "Future"
    ELSEIF [Year (Year)] = [Event Year] THEN
        "Current"
    ELSE
        "Past"
    END
    
    • Color Line=
    IF [Year (Year)] >=[Event Year] THEN
        "Future"
    ELSE
        "Past"
    END
    
    • 将[Color Line]拖到[timeline]工作表,线轴上,标记类型选择“颜色”,编辑好颜色,同时要右键改为“属性”。
    • 将[Shape]拖到[timeline]工作表,形状轴上,替换掉[Is Event],重新编辑形状

    至此大功告成。

    这个Viz里面用到的知识还是非常多的,大家还需要悉心研究,搞透原理,日后遇到新需求才能才能举一反三,游刃有余。

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

    相关文章

      网友评论

        本文标题:用Tableau制作滚动时间轴(下)

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