Python を使用して 5 分でデンドログラムとレーダー チャートを描画する方法を学習します
データ視覚化では、デンドログラムとレーダー チャートが一般的に使用される 2 つのチャート形式です。ツリーマップは階層構造を表示するために使用され、レーダー チャートは複数の次元にわたるデータを比較するために使用されます。この記事では、Python を使用してこれら 2 つのグラフを描画する方法と、具体的なコード例を紹介します。
1. 樹状図の描画
Python には、matplotlib やgraphviz など、樹状図の描画に使用できるライブラリが複数あります。以下では、例として matplotlib ライブラリを使用して、樹状図を描画する方法を示します。
まず、matplotlib ライブラリをインストールする必要があります。 pip コマンドを使用してインストールできます。
pip install matplotlib
インストールが完了したら、次のコードを使用して単純なツリー図を描画できます。
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()
上記のコードを実行して、単純なツリー図を表示します。画面上のツリー図 A がルート ノード、B と C が子ノード、D、E、F、G がリーフ ノードであるツリー図。
2. レーダー チャートの描画
レーダー チャートを描画するには、matplotlib ライブラリの別のサブライブラリ mpl_toolkits.mplot3d を使用する必要があります。以下では、例として mpl_toolkits ライブラリを使用して、レーダー チャートを描画する方法を示します。
まず、mpl_toolkits ライブラリをインストールする必要があります。 pip コマンドを使用してインストールできます:
pip install mpl_toolkits
インストールが完了したら、次のコードを使用して簡単なレーダー チャートを描画できます:
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()
上記のコードを実行すると、簡単なレーダー チャートが表示されます。画面上のレーダー図。A、B、C、D、E は異なる次元であり、値は対応する次元のデータ ポイントです。
概要
この記事の導入部を通じて、Python を使用して樹状図とレーダー チャートを描画する方法を学びました。ツリーマップは階層構造を表示するために使用され、レーダー チャートは複数の次元にわたるデータを比較するために使用されます。 matplotlib ライブラリと mpl_toolkits ライブラリの関数とメソッドを使用すると、さまざまな樹形図やレーダー チャートを簡単に描画して、データを視覚的に表示できます。
以上が5 分で Python で樹状図とレーダー チャートを描画する方法を学びますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。