Praxis der Realisierung der Breiten- und Höhenanpassung von Echarts-Diagrammen in Vue

Praxis der Realisierung der Breiten- und Höhenanpassung von Echarts-Diagrammen in Vue

1. Installieren und importieren

npm installiere echarts --save
//main.js 

// E-Charts aus „E-Charts“ importieren; 
import * as echarts from 'echarts'; // Wenn Sie echarts 5 oder höher installieren, müssen Sie es folgendermaßen importieren: Vue.prototype.$echarts = echarts

2. Definieren Sie die Anti-Shake-Funktion

Portal: Implementierung von Anti-Shake, Throttling und Anwendungsszenarien von Funktionen in Vue

// utils/common.js

// Anti-Shake-Funktion _debounce(fn, delay = 300) {
  var Timer = null;
  Rückgabefunktion () {
    var _this = dies;
    var args = Argumente;
    wenn (Timer) Zeitüberschreitung löschen (Timer); 
    Timer = setzeTimeout(Funktion () {
      fn.apply(_this, args);
    }, Verzögerung);
  };
}

Export{
  _Entprellung,
}

3. Diagrammcode zeichnen

<Vorlage>
  <div Klasse="Diagramme">
    <div id="Liniendiagramm" :style="{ width: '100%', height: '400px' }"></div>
  </div>
</Vorlage>

<Skript>
importiere { _debounce } von '@/utils/common.js'
Standard exportieren {
  Daten() {
    zurückkehren {};
  },
  Methoden: {
    zeichneLinie() {
      // Initialisieren Sie die Echarts-Instanz basierend auf dem vorbereiteten Dom let lineChart = this.$echarts.init(document.getElementById("lineChart"));
      lineChart.setOption({
        Titel:
          Text: „Diagramm der Beziehung zwischen Niederschlag und Abfluss“,
          x: "Mitte",
        },
        x-Achse:
          Typ: "Kategorie",
          Daten: ["Mo", "Di", "Mi", "Do", "Fr", "Sa", "So"],
        },
        yAchse: {
          Typ: "Wert",
        },
        Serie: [
          {
            Daten: [820, 932, 901, 934, 1290, 1330, 1320],
            Typ: "Linie",
          },
        ],
      });
    },
    resizeCharts:_debounce(Funktion(){
      dies.$echarts.init(document.getElementById('lineChart')).resize()
    },500)
  },
  montiert() {
    dies.drawLine();
    window.addEventListener('Größe ändern',this.resizeCharts);
  },
  vorZerstören () {
    window.addEventListener('Größe ändern',this.resizeCharts);
  },
};
</Skript>

init-Methode

Erstellen Sie eine ECharts-Instanz und geben Sie echartsInstance zurück. Sie können nicht mehrere ECharts-Instanzen in einem einzigen Container initialisieren.

(dom: HTMLDivElement|HTMLCanvasElement, Thema?: Objekt|Zeichenfolge, Optionen?: {
    Gerätepixelverhältnis?: Zahl,
    Renderer?: Zeichenfolge,
    useDirtyRect?: boolean, // Unterstützt seit „v5.0.0“ Breite?: Zahl|Zeichenfolge,
    Höhe?: Zahl|Zeichenfolge,
    Gebietsschema?: Zeichenfolge
}) => ECharts

dom: Instanzcontainer, normalerweise ein Div-Element mit Höhe und Breite.

Hinweis: Wenn das Div ausgeblendet ist, kann ECharts möglicherweise die Höhe und Breite des Div nicht ermitteln, was zu einem Initialisierungsfehler führt. In diesem Fall können Sie style.width und style.height des Div explizit angeben oder echartsInstance.resize manuell aufrufen, um die Größe anzupassen, nachdem das Div angezeigt wurde.

ECharts 3 unterstützt die direkte Verwendung von Canvas-Elementen als Container, sodass das Canvas nach dem Zeichnen des Diagramms direkt als Bild an anderen Stellen angewendet werden kann. Beispielsweise kann dies in WebGL als Textur die Echtzeitaktualisierung des Diagramms unterstützen, verglichen mit der Verwendung von echartsInstance.getDataURL zum Generieren eines Bildlinks.

Thema: Das Thema der Anwendung. Es kann sich um ein Designkonfigurationsobjekt oder einen Designnamen handeln, der über echarts.registerTheme registriert wurde.

opts: zusätzliche Parameter. Es gibt mehrere Möglichkeiten:

  • devicePixelRatio: Gerätepixelverhältnis, der Standardwert ist das Browserfenster „window.devicePixelRatio“.
  • Renderer Renderer, unterstützt „Canvas“ oder „SVG“. Siehe „Rendering mit Canvas oder SVG“.
  • useDirtyRect Gibt an, ob die Darstellung schmutziger Rechtecke aktiviert werden soll. Der Standardwert ist „false“. Siehe die neuen Funktionen von ECharts 5.
  • Mit width kann die Instanzbreite explizit in Pixeln angegeben werden. Wenn der Eingabewert null/undefiniert/‚auto‘ ist, bedeutet dies, dass die Breite des DOM (Instanzcontainer) automatisch übernommen wird.
  • Höhe Sie können die Instanzhöhe explizit in Pixeln angeben. Wenn der übergebene Wert null/undefiniert/‚auto‘ ist, bedeutet dies, dass die Höhe des DOM (Instanzcontainer) automatisch übernommen wird.
  • Die vom Gebietsschema verwendete Sprache. Es gibt zwei integrierte Sprachen: „ZH“ und „EN“. Sie können auch die Methode echarts.registerLocale verwenden, um ein neues Sprachpaket zu registrieren. Informationen zu derzeit unterstützten Sprachen finden Sie unter src/i18n.

Wenn Sie kein Design angeben, müssen Sie vor der Übergabe von Optionen auch null übergeben, z. B.: const chart = echarts.init(dom, null, {renderer: 'svg'});

Erklärung zur Größenänderung auf der offiziellen Website

Ändern Sie die Diagrammgröße. Diese Funktion muss manuell aufgerufen werden, wenn sich die Containergröße ändert.

(Optionen?: {
    Breite?: Zahl|Zeichenfolge,
    Höhe?: Zahl|Zeichenfolge,
    still?: Boolesch,
    Animation?:
        Dauer?: Zahl
        Lockerung?: Zeichenfolge
    }
}) => ECharts

Parameter:

Optionen können weggelassen werden. Es gibt mehrere Möglichkeiten:

  • Breite: Sie können die Instanzbreite explizit in Pixeln angeben. Wenn der Eingabewert null/undefiniert/‚auto‘ ist, bedeutet dies, dass die Breite des DOM (Instanzcontainer) automatisch übernommen wird.
  • Höhe: Sie können die Instanzhöhe explizit in Pixeln angeben. Wenn der übergebene Wert null/undefiniert/‚auto‘ ist, bedeutet dies, dass die Höhe des DOM (Instanzcontainer) automatisch übernommen wird.
  • silent: Gibt an, ob das Werfen von Ereignissen verboten werden soll. Der Standardwert ist „false“.
  • Animation: Ob beim Ändern der Größe eine Übergangsanimation angewendet werden soll, einschließlich Dauer und Easing-Konfiguration. Die Standarddauer ist 0, was bedeutet, dass keine Übergangsanimation angewendet wird.

Hinweis:
Manchmal werden Diagramme in mehreren Registerkarten platziert. Beim Initialisieren des Diagramms kann es vorkommen, dass die zunächst ausgeblendeten Registerkarten nicht dargestellt werden, da sie nicht die tatsächliche Höhe und Breite des Containers erreichen können. Daher müssen Sie beim Wechseln zur Registerkarte die Größenänderungsmethode manuell aufrufen, um die richtige Höhe und Breite zu erreichen und die Leinwand zu aktualisieren, oder die angegebene Diagrammhöhe und -breite in den Optionen anzeigen.
Portal: Offizielle Echarts-Dokumentation

Damit ist dieser Artikel über die Verwendung von Vue zur Implementierung der Breiten- und Höhenanpassung von Echarts-Diagrammen abgeschlossen. Weitere Informationen zur Breiten- und Höhenanpassung von Vue-Echarts-Diagrammen finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Mehrere Lösungen für Vue zur Verwendung der Echarts-Diagrammanpassung
  • Perfekte Lösung für das Problem der Anpassung mehrerer Echarts-Diagramme in Vue
  • Die adaptive Methode von echarts3.0 in vue

<<:  Wichtige Tools für das Webdesign: Tutorial zum CSS-Tool-Set für das Firefox Web Developer-Plugin

>>:  Eine kurze Analyse der Verwendung von Rahmen- und Anzeigeattributen in CSS

Artikel empfehlen

Einführung in die Verwendung des HTML-Elements Noscript

Noscript-Definition und -Verwendung Das Noscript-...

So starten/stoppen Sie den Tomcat-Server in Java

1. Projektstruktur 2. Rufen Sie Tomcat.java auf P...

Auszeichnungssprache - Stylesheets drucken

Klicken Sie hier, um zum Abschnitt „HTML-Tutorial“...

Installieren Sie Docker für Windows unter Windows 10 Home Edition

0. Hintergrund Hardware: Xiaomi Notebook Air 13/I...

Einige wunderbare Verwendungsmöglichkeiten von URL-Objekten in JavaScript

Inhaltsverzeichnis Vorwort Parameter analysieren ...

Einführung in die Verwendung von CSS3-Farbwerten (RGBA) und Farbverlaufsfarben

Vor CSS3 konnten Verlaufsbilder nur als Hintergru...

Beispielanalyse der Verwendung des neuen JSON-Feldtyps in MySQL 5.7

Dieser Artikel veranschaulicht anhand eines Beisp...

Detaillierte Erläuterung der Verwendung von Object.create-Instanzen in js

1. Erstellen Sie mit der Methode Object.create() ...

Implementierung eines einfachen Karussells auf Basis von JavaScript

In diesem Artikel wird der spezifische JavaScript...

JavaScript zur einfachen Verknüpfung von Provinzen und Gemeinden

In diesem Artikel wird der spezifische Code für J...

Detaillierte Erklärung der Linux-RPM- und Yum-Befehle und -Verwendung

RPM-Paketverwaltung Ein Verpackungs- und Installa...

Gemeinsame MySQL-Sicherungsbefehle und Shell-Sicherungsskripte

Um mehrere Datenbanken zu sichern, können Sie den...