我正在尝试让Highcharts显示日常使用情况统计信息,例如:公司的资源。公司的开业日期是星期一到星期五。
我的数据集如下所示:
[Date.UTC(2012, 8, 6),17.5], (Thu)
[Date.UTC(2012, 8, 7),42.5], (Fri)
-- weekend
[Date.UTC(2012, 8, 10),20], (Mon)
[Date.UTC(2012, 8, 11),20], (Tue)
[Date.UTC(2012, 8, 12),40], (Wed)
[Date.UTC(2012, 8, 13),30], (Thu)
...
在时间序列图表中,为缺少的两个周末日期(2012年,8月8日和2012年,8月9日)插入了两个标签,但我不希望显示这些标签,因为没有值对于这些标签,所以相邻的日期将通过一条线连接,但这是错误的。
是否可以关闭此“日期插值”并仅显示我插入的值?
谢谢,菲尔
答案 0 :(得分:0)
可以使用散点图系列并自定义x轴的tickPositioner回调并过滤不是工作日的x系列数据(日期)。
我在http://jsfiddle.net/hkskoglund/6jNGg/
创造了一个小提琴为了允许错过的周末,应该按系列数据中的y值推送 null (如上面评论中所述)
不使用日期时间轴的另一个选项是使用类别轴,您可以在其中按下您拥有数据的系列中的日期。这将允许有连续的情节。看看新的小提琴:Areaspline with categories as dates
xAxis: {
labels: {
formatter: function() {
// http://api.highcharts.com/highcharts#Highcharts.dateFormat()
return Highcharts.dateFormat('%d %b', this.value);
}
},
categories : [
Date.UTC(2012, 8, 6),Date.UTC(2012, 8, 7),
Date.UTC(2012, 8, 10),Date.UTC(2012, 8, 11),
Date.UTC(2012, 8, 11)]
},
series: [{
name : 'resources',
data: [17.5,42.5,20,25,20]
}]
据我所知,在不更改Highcharts系列的源/渲染的情况下,使用您请求的绘图配置在x轴上使用datetime是不可能的。似乎具有空值的不连续性被分成所谓的段。
答案 1 :(得分:0)
您是否尝试将oridinal设为false?
答案 2 :(得分:0)
我知道这是一个老问题,但您是否尝试在插入之前将日期格式化为字符串?如果是,则可以使用类别轴。只要您没有任何日期条目与空白条目,这应该有效。
我使用嵌入在JasperReports中的Highcharts,但这可以让我们得到你想要的行为。