Python 简单热图,2个1D列作为x轴和y轴,1个1D列作为z轴

Python 简单热图,2个1D列作为x轴和y轴,1个1D列作为z轴,python,pandas,seaborn,coordinates,heatmap,Python,Pandas,Seaborn,Coordinates,Heatmap,我有一个带有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,但任何解决方案都可以。您可以旋转您的表(我包括您提到的seaborn解决方案): 输出: 如果不需要,可以删除注释;如果需要交换轴,可以交换x和y,如下所示: pivot = df.pivot(

我有一个带有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,但任何解决方案都可以。

您可以旋转您的表(我包括您提到的seaborn解决方案):

输出:

如果不需要,可以删除注释;如果需要交换轴,可以交换
x
y
,如下所示:

pivot = df.pivot(index='y', columns='x', values='z')
ax = sns.heatmap(pivot)
plt.show()
输出:

pivot = df.pivot(index='y', columns='x', values='z')
ax = sns.heatmap(pivot)
plt.show()