2013-02-13 53 views
0

我在一个图表上有多个数据源,它们根据缩放范围动态加载,但由于某些原因,图表“选择”事件从未传递xAxis,因此我可以获取选择然后重新加载适当的缩放级别的数据。由于我试图做的事情是调试有点复杂,我将案例简化为只在选择事件上执行console.log(e)的单个静态数据集。我的蒸馏水例子是在这里:Highcharts选择事件不通过xAxis

http://jsfiddle.net/j5z5E/

当我做这个示例图表上进行选择,没有放大和JavaScript控制台显示的事件具有X轴和Y轴数组,但X轴是0,长度和yAxis是1长度。

我看到支票的例子所有的时间:

if (e.xAxis[0]) { 
    //do stuff 
} 

所以,很显然有在X轴不会被传递的情况。我在做什么来触发这种情况?我知道我一定做错了什么,但是我不能为我的生活找出什么。

回答

1

的问题是,你的最小值和最大值不是数字,日期字符串。将它们投射到时间戳编号时,它可以工作。

var start = +new Date(2013, 1, 12, 0, 0, 0, 0); 
var end = +new Date(2013, 1, 14, 0, 0, 0, 0); 

Working demo

1

问题是你设置:

xAxis: { 
    type: 'datetime', 
    min: start, 
    max: end, 
    minRange: 3600000  
}, 

其设定的最大值和最小值这并没有让图缩放,因为它已经定义最小值和最大值。

Working Demo

+0

这就是有趣的,文件没有提及这一点。即使指定了最小/最大值(选择可能并不总是用于缩放),对于我来说,期望具有xAxis的选择事件似乎是完全合理的。那么我可能会提出一个错误/功能请求。 – user63599 2013-02-13 13:30:04