Lernen Sie, in fünf Minuten Dendrogramme und Radardiagramme mit Python zu zeichnen.
Bei der Datenvisualisierung sind Dendrogramme und Radardiagramme zwei häufig verwendete Diagrammformen. Baumkarten werden zur Darstellung hierarchischer Strukturen verwendet, während Radardiagramme zum Vergleich von Daten über mehrere Dimensionen hinweg verwendet werden. In diesem Artikel wird erläutert, wie diese beiden Diagramme mit Python gezeichnet werden, und es werden spezifische Codebeispiele bereitgestellt.
1. Dendrogramme zeichnen
Es gibt mehrere Bibliotheken in Python, die zum Zeichnen von Dendrogrammen verwendet werden können, wie z. B. Matplotlib und Graphviz. Im Folgenden wird die Matplotlib-Bibliothek als Beispiel verwendet, um zu demonstrieren, wie ein Baumdiagramm gezeichnet wird.
Zuerst müssen wir die Matplotlib-Bibliothek installieren. Sie können zum Installieren den Befehl pip verwenden:
pip install matplotlib
Nach Abschluss der Installation können Sie mit dem folgenden Code ein einfaches Baumdiagramm zeichnen:
import matplotlib.pyplot as plt # 创建数据 data = {'A': ['B', 'C'], 'B': ['D', 'E'], 'C': ['F', 'G']} # 递归函数,遍历数据字典,并绘制树状图 def plot_tree(data, parent=None, depth=0): for node in data.get(parent, []): plt.plot([parent, node], [depth, depth + 1], 'bo-') # 绘制节点连接线 plot_tree(data, node, depth + 1) # 递归调用,遍历子节点 # 绘制树状图 plot_tree(data) plt.show()
Führen Sie den obigen Code aus, um ein einfaches Baumdiagramm auf dem Bildschirm anzuzeigen, wobei A ist der Wurzelknoten, B und C sind untergeordnete Knoten und D, E, F und G sind Blattknoten.
2. Zeichnen von Radardiagrammen
Das Zeichnen von Radardiagrammen erfordert die Verwendung einer weiteren Unterbibliothek der matplotlib-Bibliothek, mpl_toolkits.mplot3d. Im Folgenden wird die Bibliothek mpl_toolkits als Beispiel verwendet, um zu demonstrieren, wie ein Radardiagramm gezeichnet wird.
Zuerst müssen wir die mpl_toolkits-Bibliothek installieren. Zum Installieren können Sie den Befehl pip verwenden:
pip install mpl_toolkits
Nach Abschluss der Installation können Sie mit dem folgenden Code ein einfaches Radardiagramm zeichnen:
import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D import numpy as np # 创建数据 labels = ['A', 'B', 'C', 'D', 'E'] values = np.random.randint(1, 10, len(labels)) # 绘制雷达图 fig = plt.figure() ax = fig.add_subplot(111, projection='3d') ax.plot(np.cos(np.linspace(0, 2*np.pi, len(labels)+1))[:-1], np.sin(np.linspace(0, 2*np.pi, len(labels)+1))[:-1], np.zeros(len(labels)), 'k-') # 绘制雷达图主轴 ax.fill_between(np.cos(np.linspace(0, 2*np.pi, len(labels)+1))[:-1], np.sin(np.linspace(0, 2*np.pi, len(labels)+1))[:-1], np.zeros(len(labels)), alpha=0.25) # 绘制雷达图背景 ax.plot(np.cos(np.linspace(0, 2*np.pi, len(labels)+1))[:-1], np.sin(np.linspace(0, 2*np.pi, len(labels)+1))[:-1], values, 'bo-') # 绘制雷达图数据点 # 设置坐标轴标签 ax.set_xticks(np.cos(np.linspace(0, 2*np.pi, len(labels)+1))[:-1]) ax.set_yticks(np.sin(np.linspace(0, 2*np.pi, len(labels)+1))[:-1]) ax.set_xticklabels(labels) ax.set_yticklabels([]) plt.show()
Führen Sie den obigen Code aus, um ein einfaches Radardiagramm auf dem Bildschirm anzuzeigen, wobei A , B, C, D und E sind unterschiedliche Dimensionen, und Werte sind die Datenpunkte der entsprechenden Dimensionen.
Zusammenfassung
In der Einleitung dieses Artikels haben wir gelernt, wie man mit Python Dendrogramme und Radardiagramme zeichnet. Baumkarten werden zur Darstellung hierarchischer Strukturen verwendet, während Radardiagramme zum Vergleich von Daten über mehrere Dimensionen hinweg verwendet werden. Mithilfe der Funktionen und Methoden in der Matplotlib-Bibliothek und der mpl_toolkits-Bibliothek können wir problemlos verschiedene Baumdiagramme und Radardiagramme zeichnen, um eine visuelle Anzeige der Daten zu erreichen.
Das obige ist der detaillierte Inhalt vonLernen Sie in fünf Minuten, Dendrogramme und Radardiagramme in Python zu zeichnen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!