2013-03-09 14 views
5

Używam highstock. Jak ustawić rangeSelector dla wykresu? Użyłem:jak ustawić rangeSelector dla highstock

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

ale to nie działa.

Wiem, aby ustawić go w następujący sposób: http://jsfiddle.net/Pffxt/2/ , ale utworzyć wykres raz, a następnie dodać serię. Kiedy tworzę wykres (jak przykład) i dodaję serię, rangeSelector nie działa. Myślę, że muszę użyć jak ***

Proszę mi pomóc! Dziękuję

Odpowiedz

7

Zamiast .rangeSelector({settings}) użyj .clickButton funkcję:

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

Jednak funkcja ta wydaje się być nieco dziwne i nieudokumentowane z tego co mogę powiedzieć.

Przyjmuje następujące argumenty:

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

redraw domyślnie true, a i po prostu wizualnie wybrać jeden z przycisków (poza tym, wydaje się nic nie robić). Chleb i masło wydają się być w zakresieOpcje, które są obiektem z typem i liczbą. Na przykład w powyższym przykładzie wybiera ostatni 1 miesiąc. Inne dostępne opcje to:

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

Należy jednak pamiętać, że nie można .destroy(); selektor zakres i mają ten nadal działa, byś może trzeba zrobić trochę hacking to dostać się do pracy.

Oto JSFiddle ilustrując go: http://jsfiddle.net/HFPr2/

+0

Wygląda na to, że ta metoda tylko koloruje przycisk obszaru powiększenia i nie działa poprawnie. Dziękuję. Szukałem tego. –

0

Aby użyć clickButton() trzeba nazwać tak ...

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

Jeżeli buttonOptions [] pozycja odpowiada pierwszy parametr.

1

Nie musisz podawać opcji rangeSelector do użycia. Możesz po prostu zadzwonić pod numer:

chart.rangeSelector.clickButton(0, true); 

W ten sposób pierwszy przycisk zostanie kliknięty podczas korzystania z jego aktualnych opcji.

Powiązane problemy