2016-04-29 6 views
5

Ich habe eine Echtzeit-Feed-Aufnahme von Daten einer Iot-Plattform, jedes Mal wenn ein Wert empfangen und an den Plot angehängt wird, in diesem Fall alle 15 Sekunden wird bei der Aktualisierung auf die anfängliche Zoomstufe zurückgesetzt.ZingChart - So halten Sie die Zoomstufe beim Anhängen von Werten im Echtzeit-Feed

Gibt es eine Möglichkeit, entweder das Verkleinern der Grafik zu stoppen oder die Zoomstufe aufzuzeichnen, sodass sie nach der Aktualisierung zurückgesetzt werden kann?

für den Echtzeit-Feed ein:

 "refresh": { 
     "type": "feed", 
     "transport": "js", 
     "url": "feed()", 
     "interval": 15000 
     }, 

Accquiring die Daten und auf das Grundstück angehängt:

// Get new Data 
window.feed = function(callback) {  
    // Issue a get request 
    $.getJSON('https://www.thingspeak.com/channels//feed.json?callback=?&offset=0&results=1', function(){}) 

    // Upon a successful get request... 
    .done(function(data){ 

    var p = [] 
     p[0] = p[0] = getChartDate(data.feeds[0].created_at); 
     p[1] = parseFloat(data.feeds[0].field1); 
     var newData2 = [p]; 

    // Append values to Graph 
    $("#myChart").appendSeriesValues({ 
    "values": [newData2] 
    }); 
    }) 
} 

Antwort

3

Sie müssen das zoom Objekt einzustellen, indem Sie die folgenden

zoom:{ 
    preserveZoom:true 
} 

preserveZoom behält den ZoomLevel in Ihrem Diagramm bei der Aktualisierung bei es. Alternativ können Sie einstellen, wann der Feed aktualisiert wird. Hinzufügen des Attributs resetTimeout: 'Anzahl' bestimmt, nach wie vielen Werten der Feed zurückgesetzt wird. Der Standardwert ist ziemlich niedrig (80-100).

refresh:{ 
    .... 
    resetTimeout:1000, // after 1000 nodes the feed will re-start 
} 

Ich bin mir nicht ganz sicher, was Ihre JSON aussieht, aber wenn Sie die Bildlaufleiste erhalten möchten, müssen Sie einige Dinge benötigen. Sie müssen zooming und scrolling in Ihrem JSON definiert

scrollX:{}, // makes the scrollbar appear 
scaleX:{ 
    zooming:true, // allows for zooming 
    ... 
} 

ich auf dem ZingChart Team arbeiten. Lassen Sie es mich wissen, wenn Sie weitere Hilfe benötigen.

Verwandte Themen