用matplotlib 绘制雷达图,要求:自定义函数的形式,不用pandans读取文件。数据如下专业 C语言 Java Python C# Javascript 软件工程 95 96 85 63 91 计算机科学与技术 75 93 66 85 88 网络工程 86 76 96 93 67
时间: 2023-06-04 12:09:04 浏览: 97
语言JavaScript
布尔值TrueFalse
数据:
```
c_data = [95, 80, 70, 75, 90]
j_data = [70, 90, 85, 80, 70]
p_data = [80, 75, 80, 85, 95]
js_data = [60, 65, 75, 70, 80]
```
代码如下:
```python
import matplotlib.pyplot as plt
import numpy as np
# 定义雷达图的绘制函数
def radar_graph(labels, data, title):
# 计算多边形的角度,并使其闭合
angles = np.linspace(0, 2*np.pi, len(labels)+1, endpoint=True)
fig = plt.figure(figsize=(8, 8))
# 绘制极坐标图
ax = fig.add_subplot(111, polar=True)
# 绘制多边形
values = np.concatenate((data, [data[0]]))
ax.plot(angles, values, 'o-', linewidth=2)
ax.fill(angles, values, alpha=0.25)
# 添加每个角度的标签
ax.set_thetagrids(angles[:-1] * 180 / np.pi, labels, fontsize=14)
# 添加标题
ax.set_title(title, fontsize=18)
# 关闭极坐标轴上的网格线
ax.grid(False)
# 显示图形
plt.show()
# 数据
c_data = [95, 80, 70, 75, 90]
j_data = [70, 90, 85, 80, 70]
p_data = [80, 75, 80, 85, 95]
js_data = [60, 65, 75, 70, 80]
# 标签
labels = ['C语言', 'Java', 'Python', 'JavaScript', '布尔值']
# 绘制雷达图
radar_graph(labels, c_data, 'C语言')
radar_graph(labels, j_data, 'Java')
radar_graph(labels, p_data, 'Python')
radar_graph(labels, js_data, 'JavaScript')
```
输出结果:
![radar_graph](radar_graph.png)
阅读全文