


So verwenden Sie Sankey Rose Chart, um Datenfluss- und Proportionsänderungen in ECharts anzuzeigen
ECarts ist eine visuelle Datenanzeigebibliothek, die Daten anschaulicher und intuitiver machen kann. Unter anderem kann das Sankey-Rose-Diagramm eine große Hilfe bei der Darstellung der Datenflussrichtung und Proportionsänderungen sein. In diesem Artikel wird die Verwendung des Sankey-Rosendiagramms in ECharts vorgestellt und gleichzeitig spezifische Codebeispiele bereitgestellt.
- Einführung
Das Sankey-Rosendiagramm ist ein spezielles Rosendiagramm, das Daten durch konzentrische Ringe aus inneren und äußeren Kreisen und Sektorlängen anzeigt. Es verfügt über eine klare hierarchische Struktur und eignet sich zur Darstellung mehrdimensionaler Datenflüsse. In ECharts kann das Sankey-Rose-Diagramm verwendet werden, um die Proportionen zwischen verschiedenen Dimensionen und die Beziehung zwischen den Proportionen im Zeitverlauf darzustellen. Darüber hinaus unterstützt ECharts in Situationen, in denen die Datenmenge groß ist und zu viele Dimensionen vorhanden sind, auch die Bildlaufanzeige und die Vorschau von Miniaturansichten, um den Benutzern die visuelle Interaktion zu erleichtern.
- Implementierung
Im Folgenden wird die Verwendung des Sankey-Rosendiagramms in ECharts zur Anzeige von Datenflussrichtungs- und Proportionsänderungen vorgestellt, einschließlich der vier Schritte Initialisierung, Festlegen von Daten, Festlegen von Stilen und interaktiven Effekten.
2.1 Initialisierung
Die Initialisierung umfasst das Einführen der js-Datei von ECharts und das Erstellen eines neuen Canvas-Containers. Der spezifische Code lautet wie folgt:
<!-- 引入ECharts插件 --> <script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script> <!-- 定义画布容器 --> <div id="sankey-rose" style="width: 800px;height: 600px;"></div>
2.2 Festlegen von Daten
Das Festlegen von Daten umfasst das Definieren von Knoten und Kanten. Knoten beziehen sich auf bestimmte Attribute in den Daten. In einem Sankey-Rose-Diagramm von Verkaufsdaten können Knoten beispielsweise Produkttypen oder Verkaufsregionen sein; Der spezifische Code lautet wie folgt:
// 设置节点 var data = { nodes: [ {name: 'A'}, {name: 'B'}, {name: 'C'}, {name: 'D'}, {name: 'E'} ], // 设置边 links: [ { source: 'A', target: 'B', value: 10 }, { source: 'B', target: 'C', value: 20 }, { source: 'C', target: 'D', value: 30 }, { source: 'D', target: 'E', value: 40 } ] };
Unter diesen enthält nodes
alle Knoten, jeder Knoten ist ein Objekt und name
stellt den Namen des Knotens dar (String-Typ). . links
enthält alle Kanten, jede Kante ist ein Objekt, source
repräsentiert den Namen des Quellknotens, target
repräsentiert den Namen des Zielknotens, value stellt den Wert der Daten dar (numerischer Typ). nodes
包含了所有的节点,每个节点是一个对象,name
表示节点的名称(字符串类型)。links
包含了所有的边,每个边是一个对象,source
表示源节点的名称,target
表示目标节点的名称,value
表示数据的值(数值类型)。
2.3 设置样式
样式是指桑基玫瑰图的整体风格和节点之间的关联。在ECharts中,样式可以通过配置series
来实现。具体代码如下:
// 设置样式 var option = { series: [{ type: 'sankey', data: data.nodes, links: data.links, layoutIterations: 32, lineStyle: { color: 'source', curveness: 0.5 }, label: { color: '#000', formatter: '{b}' } }] };
其中,type
表示图表类型,data
和links
分别对应前面定义的nodes
和links
。layoutIterations
表示布局迭代次数,值越大表示布局越密集,通常设为32即可。lineStyle
表示边的样式,color
表示边的颜色,这里设为使用源节点的颜色;curveness
表示边的弧度,设为0.5表示为曲线。label
表示节点标签的样式,formatter
表示节点标签的显示内容,这里设为使用节点的名称。
2.4 交互效果
交互效果指用户在与桑基玫瑰图进行互动时触发的效果和操作。在ECharts中,交互效果可以通过配置toolbox
来实现。具体代码如下:
// 设置交互效果 option.toolbox = { feature: { dataZoom: {}, restore: {}, saveAsImage: {} } };
其中,feature
是一个包含多种交互型工具的对象。dataZoom
表示缩放工具,restore
表示还原工具,saveAsImage
- Stil bezieht sich auf den Gesamtstil des Sankey-Rose-Diagramms und die Zuordnung zwischen Knoten. In ECharts können Stile durch die Konfiguration von
series
implementiert werden. Der spezifische Code lautet wie folgt:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>桑基玫瑰图示例</title> <script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script> </head> <body> <div id="sankey-rose" style="width: 800px;height: 600px;"></div> <script> // 初始化 var myChart = echarts.init(document.getElementById('sankey-rose')); // 设置数据 var data = { nodes: [ {name: '华东地区'}, {name: '华南地区'}, {name: '华北地区'}, {name: '东北地区'}, {name: '中西部地区'}, {name: '电子产品'}, {name: '家用电器'}, {name: '食品饮料'}, {name: '化妆品'}, {name: '家居生活'} ], links: [ { source: '华东地区', target: '电子产品', value: 300 }, { source: '华东地区', target: '家用电器', value: 200 }, { source: '华东地区', target: '食品饮料', value: 100 }, { source: '华南地区', target: '化妆品', value: 400 }, { source: '华南地区', target: '家居生活', value: 500 }, { source: '华北地区', target: '电子产品', value: 200 }, { source: '华北地区', target: '家用电器', value: 150 }, { source: '东北地区', target: '家用电器', value: 100 }, { source: '东北地区', target: '化妆品', value: 50 }, { source: '中西部地区', target: '电子产品', value: 120 }, { source: '中西部地区', target: '食品饮料', value: 80 }, { source: '中西部地区', target: '家居生活', value: 200 } ] }; // 设置样式 var option = { series: [{ type: 'sankey', data: data.nodes, links: data.links, layoutIterations: 32, lineStyle: { color: 'source', curveness: 0.5 }, label: { color: '#000', formatter: '{b}' } }] }; // 设置交互效果 option.toolbox = { feature: { dataZoom: {}, restore: {}, saveAsImage: {} } }; // 渲染图表 myChart.setOption(option); </script> </body> </html>
type
den Diagrammtyp dar, und data
und links
entsprechen jeweils den zuvor definierten Knoten
und Links
. layoutIterations
stellt die Anzahl der Layout-Iterationen dar. Je größer der Wert, desto dichter ist das Layout. Normalerweise ist es auf 32 eingestellt. lineStyle
stellt den Stil der Kante dar, color
stellt die Farbe der Kante dar, hier wird die Farbe des Quellknotens verwendet; > stellt das Bogenmaß der Kante dar, eingestellt auf 0,5, wird als Kurve dargestellt. label
stellt den Stil des Knotenetiketts dar, formatter
stellt den Anzeigeinhalt des Knotenetiketts dar, hier ist es so eingestellt, dass der Name des Knotens verwendet wird. 2.4 Interaktive Effekte - Interaktive Effekte beziehen sich auf die Effekte und Vorgänge, die ausgelöst werden, wenn der Benutzer mit dem Sankey Rose Chart interagiert. In ECharts können interaktive Effekte durch die Konfiguration der
toolbox
erzielt werden. Der spezifische Code lautet wie folgt: rrreee
feature
ein Objekt, das eine Vielzahl interaktiver Tools enthält. dataZoom
stellt das Zoom-Tool dar, restore
stellt das Wiederherstellungstool dar und saveAsImage
stellt das Speichertool dar. Diese Tools können Benutzern beim Wechseln, Abfragen und Exportieren von Daten helfen. 🎜Vollständiger Code🎜🎜🎜Der endgültige Code ist unten. Hier ist ein Beispiel für Verkaufsdaten, bei dem ein Sankey-Rosendiagramm verwendet wird, um den Verkaufsanteil verschiedener Warenarten in verschiedenen Regionen darzustellen. 🎜rrreee🎜🎜Fazit🎜🎜🎜Das Obige ist der gesamte Prozess zur Verwendung des Sankey-Rosendiagramms zur Anzeige von Datenfluss- und Proportionsänderungen in ECharts, einschließlich Schritten wie Initialisierung, Festlegen von Daten, Festlegen von Stilen und interaktiven Effekten. In der tatsächlichen Anwendung kann es entsprechend den spezifischen Anforderungen geändert und erweitert werden. Ich hoffe, dieser Artikel kann Ihnen dabei helfen, die Verwendung von Sankey-Rosendiagrammen besser zu beherrschen. 🎜Das obige ist der detaillierte Inhalt vonSo verwenden Sie Sankey Rose Chart, um Datenfluss- und Proportionsänderungen in ECharts anzuzeigen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

JavaScript ist das Herzstück moderner Websites, da es die Interaktivität und Dynamik von Webseiten verbessert. 1) Es ermöglicht die Änderung von Inhalten, ohne die Seite zu aktualisieren, 2) Webseiten durch DOMAPI zu manipulieren, 3) Komplexe interaktive Effekte wie Animation und Drag & Drop, 4) die Leistung und Best Practices optimieren, um die Benutzererfahrung zu verbessern.

C und JavaScript erreichen die Interoperabilität durch WebAssembly. 1) C -Code wird in das WebAssembly -Modul zusammengestellt und in die JavaScript -Umgebung eingeführt, um die Rechenleistung zu verbessern. 2) In der Spieleentwicklung kümmert sich C über Physik -Engines und Grafikwiedergabe, und JavaScript ist für die Spiellogik und die Benutzeroberfläche verantwortlich.

JavaScript wird in Websites, mobilen Anwendungen, Desktop-Anwendungen und serverseitigen Programmierungen häufig verwendet. 1) In der Website -Entwicklung betreibt JavaScript DOM zusammen mit HTML und CSS, um dynamische Effekte zu erzielen und Frameworks wie JQuery und React zu unterstützen. 2) Durch reaktnatives und ionisches JavaScript wird ein plattformübergreifendes mobile Anwendungen entwickelt. 3) Mit dem Elektronenframework können JavaScript Desktop -Anwendungen erstellen. 4) Node.js ermöglicht es JavaScript, auf der Serverseite auszuführen und unterstützt hohe gleichzeitige Anforderungen.

Python eignet sich besser für Datenwissenschaft und Automatisierung, während JavaScript besser für die Entwicklung von Front-End- und Vollstapel geeignet ist. 1. Python funktioniert in Datenwissenschaft und maschinellem Lernen gut und unter Verwendung von Bibliotheken wie Numpy und Pandas für die Datenverarbeitung und -modellierung. 2. Python ist prägnant und effizient in der Automatisierung und Skripten. 3. JavaScript ist in der Front-End-Entwicklung unverzichtbar und wird verwendet, um dynamische Webseiten und einseitige Anwendungen zu erstellen. 4. JavaScript spielt eine Rolle bei der Back-End-Entwicklung durch Node.js und unterstützt die Entwicklung der Vollstapel.

C und C spielen eine wichtige Rolle in der JavaScript -Engine, die hauptsächlich zur Implementierung von Dolmetschern und JIT -Compilern verwendet wird. 1) C wird verwendet, um JavaScript -Quellcode zu analysieren und einen abstrakten Syntaxbaum zu generieren. 2) C ist für die Generierung und Ausführung von Bytecode verantwortlich. 3) C implementiert den JIT-Compiler, optimiert und kompiliert Hot-Spot-Code zur Laufzeit und verbessert die Ausführungseffizienz von JavaScript erheblich.

Die Anwendung von JavaScript in der realen Welt umfasst Front-End- und Back-End-Entwicklung. 1) Zeigen Sie Front-End-Anwendungen an, indem Sie eine TODO-Listanwendung erstellen, die DOM-Operationen und Ereignisverarbeitung umfasst. 2) Erstellen Sie RESTFUFFUPI über Node.js und express, um Back-End-Anwendungen zu demonstrieren.

Zu den Hauptanwendungen von JavaScript in der Webentwicklung gehören die Interaktion der Clients, die Formüberprüfung und die asynchrone Kommunikation. 1) Dynamisches Inhaltsaktualisierung und Benutzerinteraktion durch DOM -Operationen; 2) Die Kundenüberprüfung erfolgt vor dem Einreichung von Daten, um die Benutzererfahrung zu verbessern. 3) Die Aktualisierung der Kommunikation mit dem Server wird durch AJAX -Technologie erreicht.

Es ist für Entwickler wichtig, zu verstehen, wie die JavaScript -Engine intern funktioniert, da sie effizientere Code schreibt und Leistungs Engpässe und Optimierungsstrategien verstehen kann. 1) Der Workflow der Engine umfasst drei Phasen: Parsen, Kompilieren und Ausführung; 2) Während des Ausführungsprozesses führt die Engine dynamische Optimierung durch, wie z. B. Inline -Cache und versteckte Klassen. 3) Zu Best Practices gehören die Vermeidung globaler Variablen, die Optimierung von Schleifen, die Verwendung von const und lass und die Vermeidung übermäßiger Verwendung von Schließungen.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

SecLists
SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

DVWA
Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software
