July 6, 2020

Wir stellen vor: Lightweight Charts 3.0

Wir freuen uns auf die Veröffentlichung vonLightweight Charts 3.0. Wir haben die Möglichkeit hinzugefügt, zwei Preisskalen gleichzeitig zu haben, die Balkenanzahl von links/rechts der sichtbaren Daten zu bestimmen, Ihr eigenes Datumsformat zu verwenden, den automatischen Skalenbereich außer Kraft zu überschreiben und vieles mehr. In diesem Beitrag führen wir Sie durch jede dieser Aktualisierungen und zeigen Ihnen, wie Sie mit unserer neuesten Version von Lightweight Charts beginnen können.

Wichtigste Änderungen

Zunächst einmal handelt es sich um eine wichtige Veröffentlichung Bibliothek, die einige grundlegende Änderungen enthält:

  • Beide MethodensubscribeVisibleTimeRangeChange undunsubscribeVisibleTimeRangeChange wurden von ChartApi zu TimeScaleApi verschoben;
  • Mit unserem Release 3.0 können Sie die Preisachse angeben, auf der Sie die Serie platzieren möchten. Dasselbe gilt für das Verschieben der Serie zwischen Preisskalen.

Beachten Sie unser breaking changes doc mit einem mit einem umfassenden Leitfaden, der Ihnen bei einem reibungslosen Übergang hilft.

Zwei Preis-Skalen

Seit unserer ersten öffentlichen Version konnte die Bibliothek, wenn überhaupt, nur eine Preisskala gleichzeitig (von links oder von rechts) anzeigen. Mit Version 3.0 können Sie bis zu zwei Preisskalen gleichzeitig anzeigen. Das bedeutet, dass Sie zwei verschiedene Serien in das Chart einfügen können, sie auf verschiedene Preisskalen legen können (eine links, die andere rechts) und beide werden sichtbar sein. Darüber hinaus haben Sie die Möglichkeit, mehrere Serien auf dieselbe Preisskala zu setzen, auch wenn es sich um ein Overlay handelt. Auf diese Weise können Sie Ihre eigene Studie mit mehreren Ausgaben erstellen, wobei Sie jede Ausgabe als separate Serie erstellen und sie alle auf die gleiche Preisskala setzen können, so dass sie zusammen skaliert werden.

Sichtbarkeit und Zählen von Balken

Nehmen wir an, Sie entwickeln eine App und müssen ein kontinuierliches Datenladen für den Fall implementieren, dass ein User in der Historie nach links scrollt (hier einsehbar). Dies ist eine ziemlich grundlegende Funktion für Chart-Lösungen.

Die Version 3.0 der Bibliothek hat viele Verbesserungen im Zusammenhang mit dieser Funktion. So können Sie jetzt z.B. Informationen darüber erhalten, wie viele Balken eine Serie hat, und zwar von der linken Seite des linken sichtbaren Balkens oder von der rechten Seite des rechten sichtbaren Balkens. Sie können jetzt auch Vorhersagen machen und neue Balken im Voraus laden, so dass User kein „Einfrieren“ oder Verzögerungen beim Laden erleben. Nehmen wir zum Beispiel an, Sie beginnen mit dem Laden zusätzlicher Balken, wenn ein User nach links scrollt, so dass der Chart noch 50-100 Balken in der Historie hat.

Darüber hinaus kann die API auch dazu verwendet werden, sichtbare Bereiche zwischen mehreren Charts reibungslos zu synchronisieren (wie z.B. auf dem Multichart von TradingView zu sehen). Wenn ein Chart bewegt wird, werden auch andere bewegt.

Datum-Formate

Zuvor hatten wir eine fest kodierte Liste der verfügbaren Datumsformate (insgesamt 19 Formate), so dass Sie nicht in der Lage waren, Ihr eigenes Format anzupassen und zu verwenden, das Ihren Anforderungen besser gerecht würde.

In 3.0 haben wir dies geändert, so dass Sie jetzt jede beliebige benutzerdefinierte Zeichenfolge als Datumsformat verwenden können. Sie können zum Beispiel `yyyy-dd` oder sogar `yyyyy` verwenden, was für saisonale Charts geeignet ist.

Ein benutzerdefiniertes Format kann eine beliebige Zeichenfolge sein, die eine beliebige Anzahl von Datumsplatzhaltern enthält, die wir dann durch entsprechende Datumswerte ersetzen:

  • `yyyy` – Jahr ausgeschrieben (z.B. 2020)
  • `yy` – Jahr abgekürzt (z.B. 20)
  • `MMMM` – Monat ausgeschrieben (z.B. July)
  • `MMM` -Monat abgekürzt (z.B. Feb)
  • `MM` – numerischer Monat (mit führender Null, falls erforderlich) (z.B. 03)
  • `dd` – Tag des Monats (mit führender Null, falls erforderlich) (z.B. 15)

Überschreiben der Preis-Range von Serien

Standardmäßig verwendet die Bibliothek im automatischen Skalierungsmodus alle sichtbaren Daten im Chart zur Berechnung der Preisspanne. Wenn Sie ihn jedoch in irgendeiner Weise ändern möchten, z.B. wenn Sie sicher sind, dass die Reihe keine negativen Werte haben soll, können Sie den Preisbereich so ändern, dass er als nicht negativ projiziert wird, und die Bibliothek wird den Preisbereich entsprechend übernehmen.

Fähigkeit, Serienmarkierungen einen Text hinzuzufügen

Serienmarker sind nützlich, um die UX eines Charts zu verbessern. Sie ermöglichen es Ihnen, Markierungen (d.h. Pfeile, einen Kreis oder ein Quadrat) neben den Balken einer Serie anzuzeigen. In unserer neuen Version der Bibliothek können Sie auch eine Signatur oder einen Text für jede Markierung angeben, so dass Sie Beschriftungen und Anmerkungen hinzufügen können.

API zum Konvertieren von Zeit in eine Koordinate und umgekehrt

Gelegentlich ist es notwendig, einen Hinweis oder Text zu einem bestimmten Zeitpunkt oben in der Bibliothek auf dem Chart zu platzieren. In unserer Version 3.0 haben wir die Möglichkeit hinzugefügt, die Zeit in die X-Koordinate und umgekehrt umzuwandeln, wobei im Wesentlichen die API die Bildschirmkoordinate festlegt. Darüber hinaus können Sie jetzt auch die Breite der sichtbaren Preisskala (links oder rechts) erhalten. Dies kann z.B. nützlich sein, wenn Sie die linke Preisskala anzeigen lassen und Sie eine genaue Koordinate innerhalb des Charts benötigen.

Möglichkeit, Preisskala-Tick-Markierungen zu verbergen

Tick-Markierungen auf der Preisskala mögen manchen etwas verwirrend erscheinen, oft weil sie wie ein Minuszeichen aussehen. Jetzt können Sie dieses Symbol jedoch deaktivieren, was dazu führt, dass die Bibliothek deren Anzeige einstellt. Das bedeutet, dass keine verwirrenden Symbole mehr Ihren Chart ausfüllen, wenn Sie diesen Platz frei haben möchten. 

Mehr Funktionen, kleineres Paket

Eine der Bedeutungen von „Lightweight“ bezieht sich auf die Größe. Die erste Version der Bibliothek war ~43.7KB in min.gz. Seitdem haben wir viele neue Funktionen hinzugefügt, und Sie denken vielleicht, dass die Größe das Wachstum dieser Ergänzungen imitiert, da liegen Sie jedoch daneben.

In dieser Version haben wir verschiedene Techniken angewandt, um die Größe der Bibliothek zu reduzieren, so dass wir Ihnen eine kleinere Paketgröße anbieten können. Daher ist die Version 3.0 der Bibliothek 42,4 KB in min.gz, also noch kleiner als zuvor, aber vollgepackt mit zusätzlichen Funktionen und Tools.

Beachten Sie, dass die Techniken, die wir hier verwendet haben, nicht spezifisch für Lightweight Charts sind. Das heißt, Sie können diese auch in Ihren Projekten verwenden. Wenn Sie daran interessiert sind, mehr über unser Verfahren zu erfahren, sehen Sie sich die folgenden GH #436 und GH #432 an, welche die Größenreduzierung in der Bibliothek hervorheben. Unsere Tests haben gezeigt, dass diese Techniken die Größe eines Pekets um bis zu 30 % in verkleinerter unkomprimierter Form und um bis zu 10 % in min.gz reduzieren können.

Ein ganz besonderer Dank geht an unsere Community

TradingView ist eine Gemeinschaft von Investoren, Tradern und Programmierern. Wir möchten uns bei allen Mitwirkenden bedanken, die an dieser Veröffentlichung mitgewirkt haben:

Wir haben Ihnen noch mehr zu zeigen

Wir haben mit diesem Beitrag nur an der Oberfläche gekratzt, was in Lightweight Charts 3.0 neu ist. Um eine vollständige Liste der Änderungen zu sehen, empfehlen wir Ihnen, unsere Github notes für weitere Details und Informationen zu lesen. Wenn Sie mehr darüber erfahren möchten, wie Lightweight Charts Ihnen helfen kann, besuchen Sie bitte unsere Charting-Bibliothek.

Wir hoffen, dass Ihnen dieses Update gefallen hat. Bitte senden Sie uns wie immer weiterhin Ihre Kommentare, Anregungen und Ihr Feedback. Es ist uns eine Freude, Dinge für Sie zu entwickeln.

Look first / Then leap

Chart öffnen