2013-03-06 16 views
9

Mam problem z nawigatorem Highstock zawsze wyświetlającym 1970-1-1 jako punkt wyjścia podczas tworzenia dynamicznych serii i danych ... czy ktoś napotkał ten problem i ma jakieś obejścia?Highstock Navigator zawsze zaczyna się od 1970-1-1

Oto przykład: http://jsfiddle.net/sokarovski/SRtvn/

var $container = $('.canvas'); 
var chart = new Highcharts.StockChart({ 
    chart: { 
     renderTo: $container[0] 
    }, 
    xAxis: { 
     type: 'datetime' , 
     ordinal: false 
    } 
}); 

chart.addSeries({ 
    data: [ 
     [Date.UTC(2013,1,1), 0], 
     [Date.UTC(2013,1,5), 10], 
     [Date.UTC(2013,1,15), 15], 
     [Date.UTC(2013,2,5), 20], 
     [Date.UTC(2013,2,28), 25], 
     [Date.UTC(2013,3,3), 30], 
    ]   
}); 

//I tried to fix it with this also but it does not help 
chart.xAxis[0].setExtremes(Date.UTC(2013,1,1), Date.UTC(2013,3,3)); 

Odpowiedz

3

Spowodowane jest to, że nawigator nie działa prawidłowo, podczas próby addSeries/addPoint do wykresu, który nie ma serii/danych. Ten błąd jest zgłaszane tutaj:

https://github.com/highslide-software/highcharts.com/issues/624

+1

Przepraszam, że szukałem całego ranka, aby znaleźć więcej informacji na ten temat, więc zasadniczo nie ma obejścia tego, nawet jeśli ustawiłem go w jakiś sposób ręcznie za każdym razem, gdy dane są ładowane? – thejigsaw

+0

Proponuję dodać co najmniej jedną serię z danymi, a następnie użyć addSeries. –

+1

Nawet po uruchomieniu serii po dodaniu następnej serii nawigator jest ponownie wkręcony ... :(Mój przypadek użycia wymaga usunięcia wszystkich serii i wprowadzenie nowych nie jest to naprawdę dane na żywo tylko przeglądanie historii i różnych danych. myślę, że niszczenie Highstock i tworzenie nowego Highstock jest lepszą opcją? Miałem obawy o wycieki pamięci w przeglądarkach z js, ponieważ oni nie radzą sobie z nimi bardzo dobrze ... – thejigsaw

0

Co możemy zrobić, to my pre-fetch nasze dane chcemy dodać do wykresu i wziąć pierwszy punkt i stworzenia serii na wykresie stanie się po prostu, że jeden punkt . Następnie wywołujemy kod danych dodawania, aby dodać pozostałe punkty, tak aby wykres "grał".

Teraz, jeśli nie wiesz, jakie dane otrzymasz jako pierwsze (na przykład pozwolisz użytkownikowi kliknąć przycisk, aby wyświetlić dane1 lub dane2, a nie masz wartości domyślnej), możesz utworzyć wykres - ale ukryj to. Za pomocą ładowania options. W ten sposób tworzysz pusty wykres i nie wyświetlasz go, dopóki użytkownik nie wybierze danych.

Powiązane problemy