Highcharts - 按周和标签格式器绘图

时间:2016-07-05 13:20:56

标签: highcharts labels gantt-chart

我试图使用Highcharts创建一个项目调度图,我有一个问题是将我想要绘制的值与轴标签分开。例如,我想在2016年第20周开始一项任务,所以我一直在做的就是将年份和周期连接成:" 201620"然后把它变成一个类别。对于我的标签,我只是将前四个数字中的最后两位数分开,所以它看起来像" 2016-20"。我通过在代码的yAxis部分使用标签格式化代码来实现这一点:

formatter: function() {
  var FullDate = this.value.toString();
  var FiscalYear = FullDate.substring(0, 4);
  var WorkWeek = FullDate.substring(4, 6);
  return FiscalYear + '-' + WorkWeek;
}

只要所有任务都在同一年内发生(see fiddle),这就行得很好。

我的问题是在2017年到来时应该做些什么(一年中不应该有99周,see fiddle)。因此,我将工作周转换为自动计算的整数,但我仍然希望我的图表显示" 2016-20"。

所以我的问题是:如何绘制整数但在轴上显示单独的文字?

Link to working example

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

我在存储了我的轴标签时添加了一个数组,我想我解决了我的问题。 Link to fiddle here

var WorkWeekLabels = {
            '1967' : '2016 - 23',
            '1968' : '2016 - 24',
            '1969' : '2016 - 25',
            '1970' : '2016 - 26',
            '1971' : '2016 - 27',
            '1972' : '2016 - 28',
            '1973' : '2016 - 29',
...etc...
}

This post几乎为我解决了这个问题。