如何利用 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()
输出
它将生成以下输出 −
广告