如何利用 Python Matplotlib 繪製多邊形雷達(蜘蛛)圖?


要在 Python 中繪製多邊形雷達(蜘蛛)圖,我們可以執行以下步驟 −

步驟

  • 設定圖表的大小並調整子圖之間的間距和周圍的內邊距。

  • 使用 sportsvalues 列建立 Pandas 資料框。

  • 建立一個新圖表或啟用一個現有圖表。

  • 'ax' 作為子圖排列的一部分新增到圖表中。

  • 根據資料幀值獲取 theta 值。

  • 獲取資料幀的值列表。

  • 使用 theta 和 values 資料點繪製條形圖。

  • 填充多邊形之間的區域。

  • 使用 show() 方法顯示圖表。

示例

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

df = pd.DataFrame({'sports': ['Strength', 'Speed', 'Power', 'Agility', 'Endurance', 'Analytical Aptitude'], 'values': [7, 8, 6, 10, 8, 9]})

fig = plt.figure()

ax = fig.add_subplot(111, projection="polar")

theta = np.arange(len(df) + 1) / float(len(df)) * 2 * np.pi

values = df['values'].values
values = np.append(values, values[0])

l1, = ax.plot(theta, values, color="purple", marker="o", label="Name of values")

ax.tick_params(pad=10)
ax.fill(theta, values, 'green', alpha=0.3)

plt.show()

輸出

它將生成以下輸出 −

更新於: 2022-02-01

2000+ 已瀏覽

開啟您的事業

完成課程以獲得認證

開始
廣告