如何利用 Python Matplotlib 繪製多邊形雷達(蜘蛛)圖?
要在 Python 中繪製多邊形雷達(蜘蛛)圖,我們可以執行以下步驟 −
步驟
設定圖表的大小並調整子圖之間的間距和周圍的內邊距。
使用 sports 和 values 列建立 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()輸出
它將生成以下輸出 −
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP