斯皮尔曼热力图python代码
时间: 2024-06-17 16:01:46 浏览: 242
热力图源码
斯皮尔曼热力图(Spearman's Rank Correlation Heatmap)是一种用于可视化两个变量之间等级相关性的图表。在Python中,你可以使用seaborn库来创建这样的图表。以下是一个基本的示例代码:
```python
import seaborn as sns
import pandas as pd
import numpy as np
# 假设你有一个数据框df,其中包含两个需要分析的列,例如'data1'和'data2'
data = {
'data1': np.random.rand(100), # 生成随机数据
'data2': np.random.rand(100) # 生成另一组随机数据
}
df = pd.DataFrame(data)
# 计算等级相关系数
correlation = df['data1'].rank() # 对data1列进行排名
correlation_with_data2 = df['data2'].rank() # 对data2列进行排名
# 创建热力图
sns.heatmap(correlation.corrwith(correlation_with_data2),
annot=True, # 显示数值
cmap='coolwarm', # 设置颜色映射
annot_kws={'size': 10}, # 设置数值字体大小
center=0, # 设置中心点
fmt=".2f", # 设置小数位数
square=True, # 使矩形对角线等长
mask=None, # 不遮盖数值
cbar=False # 不显示颜色条
)
# 给图添加标题和标签
plt.title('Spearman Rank Correlation Heatmap')
plt.xlabel('data1 (Ranks)')
plt.ylabel('data2 (Ranks)')
# 显示图形
plt.show()
```
阅读全文