南丁格尔玫瑰图python
时间: 2023-09-11 08:05:38 浏览: 38
南丁格尔玫瑰图(Nightingale rose chart),也称为极坐标面积图(Polar Area Chart),是一种数据可视化图表,通常用于显示多个分类变量之间的比较,特别是在展示频率或百分比数据时。在Python中,我们可以使用matplotlib库中的polar()函数来实现南丁格尔玫瑰图。
以下是一个简单的示例代码:
```python
import matplotlib.pyplot as plt
import numpy as np
# 示例数据
labels = ['A', 'B', 'C', 'D', 'E']
values = [30, 50, 75, 110, 20]
# 计算每个扇形的角度
angles = np.linspace(0, 2*np.pi, len(labels), endpoint=False)
# 将最后一个角度值设置为初始角度值以形成闭合环
angles = np.concatenate((angles, [angles[0]]))
# 绘制南丁格尔玫瑰图
fig = plt.figure()
ax = fig.add_subplot(111, polar=True)
ax.plot(angles, values, 'o-', linewidth=2)
ax.fill(angles, values, alpha=0.25)
ax.set_thetagrids(angles * 180/np.pi, labels)
plt.show()
```
这个代码将生成一个简单的南丁格尔玫瑰图,其中每个扇形代表一个类别,扇形的大小表示该类别的数据值大小。
你可以根据自己的数据和需求对代码进行修改和优化。