python绘制人体活动热力图
时间: 2025-06-30 09:38:32 浏览: 9
### 绘制人体活动热力图的方法
人体活动热力图是一种可视化工具,用于展示不同时间段内人体活动的强度或频率。可以使用Python中的`matplotlib`和`seaborn`库来实现这一目标。以下是一个完整的代码示例,展示如何绘制人体活动热力图:
```python
import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
# 创建一个示例数据集:假设为一天24小时的人体活动强度矩阵
hours = [f"{i:02d}:00" for i in range(24)] # 时间标签
activities = ["Walking", "Running", "Sleeping", "Sitting", "Standing"] # 活动类型
data = np.random.rand(len(activities), len(hours)) * 100 # 随机生成活动强度值
# 将数据转换为DataFrame
df = pd.DataFrame(data, index=activities, columns=hours)
# 设置图像大小
plt.figure(figsize=(12, 8))
# 使用seaborn绘制热力图
sns.heatmap(df, annot=True, fmt=".1f", cmap="YlGnBu", linewidths=0.5, cbar_kws={"label": "Activity Intensity"})[^3]
# 添加标题和标签
plt.title("Human Activity Heatmap", fontsize=16)
plt.xlabel("Time of Day", fontsize=14)
plt.ylabel("Activity Type", fontsize=14)
# 显示图像
plt.show()
```
#### 说明
- 数据被组织成一个二维矩阵,行表示不同的活动类型,列表示时间点。
- `annot=True` 参数会在每个单元格中显示具体的数值[^3]。
- `fmt=".1f"` 控制注释的格式,保留一位小数。
- `cmap="YlGnBu"` 设置颜色映射为黄色到绿色再到蓝色的渐变。
- `linewidths=0.5` 在单元格之间添加细线,使热力图更加清晰[^3]。
- `cbar_kws={"label": "Activity Intensity"}` 自定义颜色条的标签。
### 注意事项
如果需要更复杂的自定义(例如字体、颜色等),可以结合`seaborn.set()`和`plt.rc()`函数进行全局设置[^2]。
阅读全文
相关推荐


















