Deaktivieren Sie die automatische Kartenverschiebung bei der Übermittlung neuer DatenJavaScript

Javascript-Forum
Anonymous
 Deaktivieren Sie die automatische Kartenverschiebung bei der Übermittlung neuer Daten

Post by Anonymous »

Wenn in AmCharts 5 neue Daten in die Serie eingefügt werden (Linienserie oder Candlestick-Serie, was auch immer), wird das Diagramm ein wenig verschoben, um die Position für das neue anzupassen. Es ist das Standardverhalten. Ich muss dies deaktivieren.
Warum? Nun, es ist eine gute Funktion, wenn Sie die neuesten Daten anzeigen. Aber wenn es um die Anzeige des Verlaufs geht, ist das ziemlich nervig. Im Video können Sie sehen, wie sich das Diagramm beim Betrachten bewegt hat.
Was ich versucht habe? Ich habe versucht, die Dokumente zu durchsuchen, aber ich habe nichts darüber gefunden. Also fing ich an, meinen eigenen Mod hinzuzufügen. Was ich getan habe ist: Wenn neue Daten übertragen werden, also eine neue Kerze erstellt wird, scrolle ich einfach zur vorherigen Position zurück. Beispiel:

Code: Select all

let prevDL = 0;
let prevPos = [0, 0];

this.root.events.on('frameended', ()=>{
let start = this.dateAxis.getPrivate('selectionMin');
let end = this.dateAxis.getPrivate('selectionMax');
let dl = this.valueSeries?.data.length;
if (!(start && end && dl && this.valueSeries)) return;
let pos = [start, end];
if (prevPos[0] && prevPos[1] && prevDL && prevDL < dl) {
this.dateAxis.setAll({
start: this.dateAxis.valueToPosition(prevPos[0]),
end: this.dateAxis.valueToPosition(prevPos[1])
});
pos = prevPos;
}
prevPos = pos;
prevDL = dl;
});
Nun, das Problem ist, dass ... es einen Glitch-Effekt erzeugt. Der Chart bewegt sich sehr schnell zur neuen Kerze und dann wieder zurück zur vorherigen Position!
Hier ist ein Demo-jsFiddle und ein Demo-Video.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post