具有 2 个一维列作为 x 和 y 轴,以及 1 个一维列作为 z 轴的简单热图
Simple heatmap with 2 1D columns as x and y-axis, and 1 1D column as z-axis
我有包含 x 轴和 y 轴坐标以及 z 值的数据框:
df = pd.DataFrame({'x':[1,2,2,3,3,3],'y':[1,1,2,1,2,3],'z':[3,2,4,5,1,6]})
df
如何绘制仅包含这些值的类似相关性的热图,即只有一个三角形半填充的 3x3 矩阵。
正在考虑使用 seaborn,但任何解决方案都可以。
您可以调整您的 table(我包括了您提到的 seaborn 解决方案):
pivot = df.pivot(index='x', columns='y', values='z')
ax = sns.heatmap(pivot, annot=True)
plt.show()
输出:
如果不需要,可以删除注释;如果需要交换轴,可以交换 x
和 y
,如下所示:
pivot = df.pivot(index='y', columns='x', values='z')
ax = sns.heatmap(pivot)
plt.show()
输出:
我有包含 x 轴和 y 轴坐标以及 z 值的数据框:
df = pd.DataFrame({'x':[1,2,2,3,3,3],'y':[1,1,2,1,2,3],'z':[3,2,4,5,1,6]})
df
如何绘制仅包含这些值的类似相关性的热图,即只有一个三角形半填充的 3x3 矩阵。
正在考虑使用 seaborn,但任何解决方案都可以。
您可以调整您的 table(我包括了您提到的 seaborn 解决方案):
pivot = df.pivot(index='x', columns='y', values='z')
ax = sns.heatmap(pivot, annot=True)
plt.show()
输出:
如果不需要,可以删除注释;如果需要交换轴,可以交换 x
和 y
,如下所示:
pivot = df.pivot(index='y', columns='x', values='z')
ax = sns.heatmap(pivot)
plt.show()
输出: