在Python编程环境中,雷达图(也称为蜘蛛图或星形图)是一种展示多变量比较的图形工具。这里将介绍如何在Python中使用matplotlib
库结合pandas
读取air_data.csv文件中的数据,并进行雷达图绘制。
- 导入必要库:
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
- 加载CSV文件:
假设
air_data.csv
文件包含空气质量指标,如“PM2.5”,“PM10”,“O3”,“NO2”和“SO2”。
df = pd.read_csv('air_data.csv')
-
雷达图参数设置:
-
获取列名作为图轴
labels = df.columns.tolist()
- 计算最大值:用于归一化处理
max_value = df.max()
- 创建角度以便在图中分布这些指标
angles = np.linspace(0, 2*np.pi, len(labels), endpoint=False).tolist()
- 构建雷达图:
fig, ax = plt.subplots(figsize=(6, 6), subplot_kw=dict(polar=True))
for column in labels:
values = df[column]
ax.plot(angles, values / max_value, label=column)
ax.fill(angles, values / max_value, alpha=0.25)
# 设置轴标签
ax.set_xticks(angles)
ax.set_xticklabels(labels)
plt.legend(loc='upper right')
plt.show()
结果:上述代码将展示各项指标在图表中的多边形形态,通过填充透明度、标签等提升可视效果。