как установить rangeSelector для highstock

Я использую хайсток. Как я могу установить rangeSelector для диаграммы? Я использовал:

chart.rangeSelector({ selected: 5 });   *

но это не сработало.

Я знаю, как это сделать, например: http://jsfiddle.net/Pffxt/2/, но Я создаю диаграмму один раз, а затем добавляю серию. Когда я создаю диаграмму (как в примере) и добавляю серию, rangeSelector не работает. Я думаю, что я должен использовать как ***

Пожалуйста помогите! Спасибо


person bahar_Agi    schedule 09.03.2013    source источник


Ответы (4)


Вместо использования .rangeSelector({settings}) используйте функцию .clickButton:

chart.rangeSelector.clickButton(0,{type: 'month', count: 1},true);

Однако, насколько я могу судить, эта функция кажется несколько странной и недокументированной.

Он принимает следующие аргументы:

* @param {Number} i The index of the button
* @param {Object} rangeOptions
* @param {Boolean} redraw

redraw по умолчанию имеет значение true, а i просто визуально выбирает одну из кнопок (кроме этого, похоже, ничего не делает). Хлеб с маслом, кажется, находится в rangeOptions, который является объектом с типом и количеством. Например, в приведенном выше примере он выбирает самый последний 1 месяц. Другие доступные варианты:

* millisecond
* second
* minute
* hour
* day
* week
* month
* ytd
* year
* all

Однако обратите внимание, что вы не можете .destroy(); селектор диапазона, чтобы он все еще работал, вам, возможно, придется немного взломать, чтобы заставить его работать.

Вот JSFiddle, иллюстрирующий это: http://jsfiddle.net/HFPr2/

person MatthewKremer    schedule 09.03.2013
comment
Кажется, что этот метод просто окрашивает кнопку области масштабирования и не работает функционально. Спасибо. Я искал это. - person bahar_Agi; 26.03.2013

Вам не нужно указывать rangeSelector параметры для использования. Вы можете просто позвонить:

chart.rangeSelector.clickButton(0, true);

Таким образом, первая кнопка будет нажата при использовании ее текущих параметров.

person MilConDoin    schedule 12.07.2016

В случае, если вы уничтожаете объект rangeseletor, невозможно отобразить несуществующий объект. Поэтому, если вы хотите отображать только селектор диапазона, вам нужно включить его с помощью http://api.highcharts.com/highstock#rangeSelector.enabled.

person Sebastian Bochan    schedule 12.03.2013

Чтобы использовать clickButton(), вам нужно вызвать его так...

chart.rangeSelector.clickButton(0, chart.rangeSelector.buttonOptions[0], true);

Где элемент buttonOptions[] соответствует первому параметру.

person MCrossley    schedule 24.01.2014