【发布时间】:2016-01-21 12:33:22
【问题描述】:
我正在使用一个数据集来描述与公司列表的合同期限。显然,所有合同都有开始日期和(最短)期限。但是,有些合同可能会延长。这是一个数据示例:
Company contractStart minDuration firstProlong secProlong
Company x 27-11-2011 27-11-2014 27-11-2015 27-11-2016
Company y 29-11-2014 29-11-2015
Company z 01-04-2011 01-12-2011 01-12-2015 01-12-2017
我想在一个甘特式图表中将它们可视化,该图表具有沿 x 轴的持续时间,并将各自的合同长度与可能的延长显示为一种堆叠条形图。除此之外,我想要一些东西来标记当前日期。我已经设法在 Excel 中做到了这一点。见图片: .
不过,我真的很想在 Tableau 中做同样的事情,但我真的不知道该怎么做。到目前为止,我一直在使用两种不同的方法:
第一种方法
在这里,我将Company 拖到“行”架子上,将contractStart 日期拖到“列”架子上。然后我创建一个计算字段,计算(使用DATEDIFF)合同开始和最短持续时间之间的天数差异。我可以将它拖到 Size 架子上,将标记类型设置为 Gantt bar,然后得到如下内容:
然后我可以继续计算最短持续时间和第一次延长之间的日期差,以及第一次和第二次持续时间之间的日期差。这里的问题是我无法将这些计算字段添加到 Size 架子,因为它一次只能容纳一个。
第二种方法
在这里我像这样重新组织我的数据:
Company Type startDate endDate
Company x minDuration 27-11-2011 27-11-2014
Company x firstProlong 27-11-2014 27-11-2015
Company x secProlong 27-11-2015 27-11-2016
Company y minDuration 29-11-2014 29-11-2015
Company y firstProlong
Company y secProlong
Company z minDuration 01-04-2011 01-12-2011
Company z firstProlong 01-12-2011 01-12-2015
Company z secProlong 01-12-2015 01-12-2015
然后我创建一个计算字段来查找startDate 和endDate 之间的天数差异。我将它拖到“列”架子上,然后将Company 拖到“行”架子上。然后我将Type 拖到“颜色”架子上,将标记类型设置为“条形”,然后得到如下内容:
这里的问题是我需要沿 x 轴的日期而不是整数。我还需要能够像我最初的 Excel 示例那样对图表进行排序。 IE。我想对合同的最长可能期限(升序)进行排序。还必须重新组织我的所有数据似乎有点繁琐。
这是我一直在使用的the spreadsheet 和the tableau file。我是否忽略了一些非常简单的事情?
【问题讨论】:
标签: tableau-api duration gantt-chart stacked-chart