2014-09-23 158 views
0

这是JSFiddle上的一个简单的highstock图表。Highstock - 为特定格式定制x轴标签或强制x轴标签

http://jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/highcharts.com/tree/master/samples/stock/xaxis/range/

你可以看到highstock图表,莫名其妙想通了,以显示x轴标签为

22nd Nov, 20 Dec, 17 Jan, 14 Feb.... 

如何强制这个x轴标签,以显示每个月的1日?因此,举例来说,我想它显示

1 Nov, 1 Dec, 1 Jan, 1 Feb... 

另外,如果我的X轴范围设置为以下

range: 1 * 30 * 24 * 3600 * 1000 // one month 

我要强制更改x轴标签,这样,而不是每月的1日,我想显示

1 Jan, 7 Jan, 14 Jan, 21 Jan, 28 Jan 

基本上,我正在寻找一种方法来改变x轴的标签,以显示我想要的方式。

回答

0

首先,您是否需要Highstock的ordinal轴?如果没有,那么只需禁用它,然后设置tickInterval,就像这样:http://jsfiddle.net/vrzjp468/

xAxis: { 
     ordinal: false, 
     range: 6 * 30 * 24 * 3600 * 1000, // six months 
     tickInterval: 30 * 24 * 3600 * 1000 
    }, 

,当然还有,当你需要不同的情况下,每两个星期一样,然后设置tickInterval: 14 * 24 * 3600 * 1000

如果您需要使用序数轴,请尝试使用tickPositioner

+0

看起来我需要使用“tickPositioner”,但我看到的例子使用了高图。 tickPositioner如何适用于X轴采用日期格式的高炉?例如,在下面的JSFiddle中,我明确指定了两个x轴标签(http://jsfiddle.net/fjtu03qb/2/),但它似乎不起作用 – ericbae 2014-09-23 20:14:58

+0

我想[question](http:/ /stackoverflow.com/questions/19454048/highcharts-label-format-with-tickpositioner-in-a-datetime-x-axis)应该帮助你;)或[这一个](http://stackoverflow.com/questions/ 16543896/highcharts基于时间的-季度数据-X轴标签发出)。 – 2014-09-24 15:51:43