Vue verwendet Echart, um Beschriftungen und Farben anzupassen

Vue verwendet Echart, um Beschriftungen und Farben anzupassen

In diesem Artikelbeispiel wird der spezifische Code von Vue mit echart zum Anpassen von Tags und Farben zu Ihrer Information geteilt. Der spezifische Inhalt ist wie folgt

Normaler Stil


UI-Malstileffekt


Das Detail besteht darin, dass die Farbe des kleinen Punktes mit der Farbe des Kreisdiagrammteils übereinstimmen muss. Dies kann mit diesem Code in Versionen vor 5.0 (echarts-Version) erreicht werden.

Etikett:{
 Formatierer: Parameter => {//●
       zurückkehren (
               '{Symbol|▅}{Name|' +params.name+ '}{Wert|' +
               params.Wert + '}'
           );
       },
       reich:
           Symbol:
               Schriftgröße: 16
           },
           Name: {
               Schriftgröße: 16,
               Polsterung: [0, 10, 0, 4],
           },
           Wert: {
               Schriftgröße: 16,
           }
       },
}

Aber mein Projekt hat einige Spezialeffekte, die nur von 5.0 unterstützt werden. Deshalb muss ich auf 5.0 aktualisieren und dann funktioniert diese Farbe nicht. Wir müssen eine Lösung für die Umsetzung finden und so wurde es schließlich umgesetzt. Weisen Sie beim Zuweisen von Daten die Farbe jeder Beschriftung neu zu und weisen Sie den Wert des Farbblocks des Kreisdiagramms zu.
Hier gibt es zwei Datensätze, da der Prozentsatz im Kreisdiagramm überlagert ist, also das, was vom Korb umkreist wird.

Konfigurationselemente:

Serie: [
    {
      Typ: "Kuchen",
      Radius: [0, '75%'],
      Mitte: ['50%', '50%'],
      oben: 0,
      // roseType: 'Radius',
      avoidLabelOverlap: wahr,
      // minShowLabelAngle: 0,6,
      Startwinkel: 0,
      Etikett: {
        anzeigen:wahr,
        Position: 'außen',
        alignTo: "Kante",
        //Eine andere Lösung Punkt normal: {
          Formatierer: Parameter => {
            // Formatfarbe(Params.Farbe)
            // Farbe = params.farbe
              zurückkehren (
                  '{Symbol|● }{Name|' + Parametername + '}'+'\n'+'{Wert|' +
                  params.Wert+'Zeiten' + '}'
              );
          },
          Polsterung: [0, -40,25, -40],
          reich:
              Symbol:
                Schriftgröße: 15,
              },
              Name: {
                Schriftgröße: 13,
                Farbe: '#666666'
              },
              Wert: {
                Schriftgröße: 12,
                Farbe: 'rgba(0,0,0,0,35)'
              }
          }
        }
      },
      Beschriftungszeile: {
        Länge: 10,
        Länge 2:70,
        glatt: falsch,
        Linienstil:{
          Farbe: "rgba(0,0,0,0.15)"
        }
      },
      Daten: []
    },
    {
      Name: '',
      Typ: "Kuchen",
      Radius: [0, '75%'],
      Mitte: ['50%', '50%'],
      Daten:[],
      oben: 0,
      // Rosentyp: 'Radius',
      avoidLabelOverlap: wahr,
      Startwinkel: 0,
      Artikelstil: {
          normal: {
              Etikett: {
                  zeigen: wahr,
                  Position: 'innen',
                  Farbe: "#fff",
                  Schriftgröße: 14,
                  ausrichten: "zentriert",
                  formatter: function (p) { //Anzeigezeile entspricht Text, Prozentsatz return p.percent + "%";
                  }
              },
          }
      }
    }
  ]

Neuzuweisung:

//Holen Sie sich die Farbkarte und weisen Sie sie neu zu. let colorArr = pieOption.color

 let seriesData = JSON.parse(JSON.stringify(this.orderServiceTimeLenData.output.value.rows))||[]
      let seriesData1 = JSON.parse(JSON.stringify(this.orderServiceTimeLenData.output.value.rows))||[]
      wenn(seriesData.length){
        seriesData.fürJeden((Element,Index)=>{
          Artikel.Name = Artikel.TypStr
          Artikelwert = Artikelnummer
          Element.Beschriftung = {Farbe:colorArr[index]}
        })
        seriesData1.fürJeden((Element,Index)=>{
          Artikel.Name = Artikel.TypStr
          Artikelwert = Artikelnummer
        })
      }
gibt {legend: {data: seriesData}, series: [{data: seriesData}, {data: seriesData1}]} zurück;

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Vue-Benutzerdefinierte Tags und Implementierungscode für Mehrfachrouting auf einer Seite
  • Benutzerdefinierte El-Select-Dropdown-Box-Beschriftungsfunktion in El-Form-Beschriftung in Vue
  • Das src-Attribut von benutzerdefinierten Vue-Tags kann keine relativen Pfade verwenden
  • Beispiel für einen von Vue2.0 implementierten Tab-Umschalteffekt (Inhalt kann angepasst werden)
  • Detaillierte Erklärung der Vue-Basis-Tags und benutzerdefinierten Steuerelemente

<<:  Detaillierte Erläuterung der am häufigsten verwendeten Image-Befehle und Container-Befehle von Docker

>>:  So verwendet MySQL Transaktionen

Artikel empfehlen

Ausführliche Erläuterung der Vue-Komponente „Multi-Select-Liste“

Eine Mehrfachauswahl ist ein Benutzeroberflächene...

CSS3-Analyse der Schritte zur Erstellung des Douyin-LOGO

Auch „Tik Tok“ erfreut sich großer Beliebtheit un...

Anwendungsbeispiel-Tutorial zum Schlüssel-Rendering in Vue

Einführung Während des Front-End-Projektentwicklu...

Django2.* + Mysql5.7-Entwicklungsumgebung Integrations-Tutorial-Diagramm

Umfeld: MAC_OS 10.12 Python 3.6 MySQL 5.7.25 Djan...

Detaillierte Erklärung der HTML-Dokumenttypen

Meines ist: <!DOCTYPE html> Blog-Garten: &l...

JavaScript implementiert die Maussteuerung eines frei beweglichen Fensters

In diesem Artikel wird der spezifische JavaScript...

Lösung für den internen Serverfehler Nginx 500

Als ich heute Nginx verwendete, trat ein 500-Fehl...

JavaScript implementiert die Verarbeitung großer Datei-Uploads

Beim Hochladen von Dateien, z. B. Videodateien, d...

MySQL-Primärschlüssel-Benennungsstrategie im Zusammenhang

Als ich kürzlich die Details der Datenlebenszyklu...

CSS horizontale Zentrierung und Begrenzung der maximalen Breite

Eine CSS-Layout- und Stilfrage: Wie kann man die ...

So überwachen Sie den Linux-Serverstatus

Wir, insbesondere Linux-Ingenieure, haben täglich...