ru/heatmap.py

34 lines
953 B
Python

import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
# 数据矩阵
data = np.array([
[78.64, 71.14, 67.81, 91.54],
[76.26, 77.4, 75.94, 91.09],
[77.36, 74.32, 76.42, 92.98],
[76.97, 75.48, 71.99, 94.04]
])
# 行列标签
row_labels = ['TruthfulQA (s)', 'TriviaQA (s)', 'CoQA (s)', 'TydiQA-GP (s)']
col_labels = ['TruthfulQA (t)', 'TriviaQA (t)', 'CoQA (t)', 'TydiQA-GP (t)']
# 设置画布大小
plt.figure(figsize=(6, 5))
# 绘制热图
ax = sns.heatmap(data, annot=True, fmt=".2f", cmap="Purples",
xticklabels=col_labels, yticklabels=row_labels,
linewidths=0.5, linecolor='gray', cbar=True)
# 调整刻度标签
plt.xticks(rotation=30, ha="right") # 旋转 X 轴标签
plt.yticks(rotation=0) # Y 轴标签保持水平
# 设置标题
plt.title("Transferability results across different datasets.")
# 显示图像
plt.show()