设置自定义rangeSelector并在图表和Navigator上使用Highstock禁用xAxis标签

时间:2014-05-12 10:57:40

标签: javascript jquery charts highcharts highstock

我正在使用带有延迟加载的highstock,就像在这个demo中一样,我使用了两个不同的系列:两者都有一个“时间”参数,但它们都没有日期时间xAxis。

每个系列都有这样的结构:

serie1:[{"x" => 1, "y" => value_1, "time" => time_of_point_1},
        {"x" => 2, "y" => value_2, "time" => time_of_point_2},
        ....
        {"x" => n, "y" => value_n, "time" => time_of_point_n}];


serie2:[{"x" => 1, "y" => value_1, "z" => value_z_1, "time" => time_of_point_1},
        {"x" => 2, "y" => value_2, "z" => value_z_2, "time" => time_of_point_2},
        ....
        {"x" => n, "y" => value_n, "z" => value_z_n, "time" => time_of_point_n}];

我的目标是拥有一个自定义rangeSelector,根据每个点的时间参数缩放图表。

所以我的问题是:

是否可以根据不同于x和y值的点参数来放大图表的自定义rangeSelector?:

让我们说:

 events:{
    if (e.trigger == "rangeSelectorButton" && 
        e.rangeSelectorButton.text == "last 3 hours"){
        // zoom on chart and set the chart
        // with all point that has "time" parameter 
        // between now and the last three hours
    }
}

我正在寻找一种方法来禁用X轴标签,使其更具可读性。

我正在尝试禁用图表xAxis和Navigator xAxis上的标签,但无论每次出现的是什么。

我在这两个代码上都使用了这个代码:

xAxis : {
    label: {
       enabled: false
    }
}

但它不起作用。

有任何建议吗?

1 个答案:

答案 0 :(得分:0)

您有两种方式:

  • 您可以调用rangeselector点击并致电 setExtremes rel topic
  • 准备自己的html按钮并调用setExtremes()

在xAxis中,它应该是标签,标签为

xAxis : {
    labels: {
       enabled: false
    }
}