Beispielcodevar Daten = [220, 182, 191, 234, 290, 120, 65, 444]; var Balkenbreite = 20; var maxNum = 0; für (var i = 0; i < Datenlänge; i++) { wenn (Daten[i] > maxNum) { maxNum = Daten[i]; } } Option = { Hintergrundfarbe: 'schwarz', Netz: { oben: '10%', links: '20%', rechts: '10%', unten: '0%', }, Titel: Text: 'Prozentspalte', }, x-Achse: anzeigen: falsch, }, yAchse: { Daten: Daten.map((Element, Index) => `Daten ${index}`), geteilte Zeile: { anzeigen: falsch, }, Achsenbezeichnung: { Textstil: { Schriftgröße: '80%', Farbe: '#02afff' }, }, Achsenlinie: { anzeigen: falsch, }, AchsenTick: falsch, }, Serie: [ { Typ: "Bar", Balkenbreite: Balkenbreite, z-Ebene: 2, Daten: Daten.Map (Funktion (Element) { zurückkehren { Wert: Artikel, maxNum: maxNum, }; }), Etikett: { zeigen: wahr, Position: 'innen', // Entfernung: 80, ausrichten: "zentriert", Formatierer: Funktion (Parameter) { // gibt params.data.realValue zurück; var Prozent = Zahl((params.data.value / params.data.maxNum) * 100).toFixed(2) + '%'; Renditeprozentsatz; }, Farbe: '#fff', Schriftgröße: 12, }, Artikelstil: { Grenzradius: 10, Farbe: neu echarts.graphic.LinearGradient(0, 1, 1, 1, [ { Offset: 0, Farbe: '#395CFE' }, { Offset: 1, Farbe: '#2EC7CF' }, ]), }, }, { Typ: "Bar", Balkenbreite: Balkenbreite, barGap: '-100%', Daten: Daten.Map (Funktion (Element) { zurückkehren { realerWert: Artikel, Wert: maxNum, }; }), Etikett: { zeigen: wahr, Position: 'rechts', Entfernung: 80, ausrichten: 'rechts', Formatierer: Funktion (Parameter) { gibt params.data.realValue + 'item' zurück; }, Farbe: '#02afff', Schriftgröße: 18, }, Artikelstil: { Grenzradius: 10, Farbe: 'rgba(3,169,244, 0.5)', }, }, ], }; RendernCode-Analyse1. Definieren Sie vor der Option ein Datenarray und verwenden Sie dann eine For-Schleife, um den Maximalwert im Array abzurufen und ihn als Variable „maxNum“ zu speichern. 2. Definieren Sie zwei Balken in der Reihe. Die Daten des ersten Balkens werden zugeordnet und der Wert wird auf die Daten in Schritt 1 gesetzt. Ein Objekttyp wird zurückgegeben. Das Objekt enthält zwei Attribute, value und maxNum (value ist ein erforderliches Attribut, maxNum ist ein benutzerdefiniertes Attribut und bei Bedarf können weitere benutzerdefinierte Attribute hinzugefügt werden). Das Attribut maxNum wird hinzugefügt, da der Formatierer des Etiketts value/maxNum verwenden muss, um den Prozentsatz zu berechnen. Dies ist das erste Mal, dass ich in der Reihe auf die Schreibmethode stoße, bei der Daten als Objekttyp zurückgegeben werden. Dies ist wirklich nützlich, um Daten für die Berechnung zu erhalten. 3. Der zweite Balken in der Reihe weist ebenfalls Daten über die Karte zu. Der Unterschied besteht darin, dass der Wert dieses Balkens vollständig auf maxNum eingestellt ist. Der zweite Balken dient als Hintergrund, was einem Fortschritt von 100 % entspricht. Der Grund, warum ein realValue-Attribut erforderlich ist, liegt darin, dass der Wert jedes Elements (220, 182, 191, 234, 290, 120, 65, 444 usw.) auf der rechten Seite der Leiste angezeigt werden muss. 4. Der erste Balken ist oben und der zweite Balken unten. Der Schlüssel ist der zlevel:2 des ersten Balkens und der barGap: '-100%' des zweiten Balkens. Es bringt mir wirklich viel, mehr Fälle auf der offiziellen echarts-Website zu lesen. ZusammenfassenDies ist das Ende dieses Artikels über die Implementierung horizontaler Balkendiagramme mit Prozentwerten in Echarts. Weitere relevante Inhalte zu horizontalen Balkendiagrammen mit Prozentwerten in Echarts finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
>>: Lösung für das Problem des Springens der Textposition, wenn das Suchtextfeld den Fokus verlässt
Hinweis: Beim Projektstart ist kein Fehler aufgru...
Erstens: 4 Möglichkeiten, CSS einzuführen Es gibt...
Die MySQL-Datenbank verfügt nicht über einen inkr...
Vorwort: Ich bin auf die Anforderung gestoßen, be...
Vorwort Wir haben Docker bereits installiert und ...
Inhaltsverzeichnis 1. Bedingungen für das Versage...
Das JD-Karussell wurde mit reinem HTML und CSS im...
Vorwort Bei der Linux-Kernel-Programmierung werde...
In diesem Artikel wird der spezifische Code für J...
1. Einleitung resolv.conf ist die Konfigurationsd...
Webformulare sind der primäre Kommunikationskanal...
1. Importieren Sie das Modul und definieren Sie e...
Inhaltsverzeichnis Erläuterung des unidirektional...
Inhaltsverzeichnis 1. Worüber ich unten sprechen ...
Verwendung der Zeitdifferenzfunktionen TIMESTAMPD...