绘制热图的Python函数

绘制热图的Python函数,python,function,heatmap,Python,Function,Heatmap,当我调用几个变量时,我很难创建一个绘制热图的函数 这是我迄今为止所做的工作,效果很好,但我如何才能将其变成一个函数呢 请注意,VarName。。。VarName[4][4]是数据集中每列的标题名 我真的很感激你的帮助 def heatmap(VarName): df = pd.DataFrame(columns=['ypos', 'xpos', 'val']) i = 0 for x in range(1,5): for y in range(1,5):

当我调用几个变量时,我很难创建一个绘制热图的函数

这是我迄今为止所做的工作,效果很好,但我如何才能将其变成一个函数呢

请注意,VarName。。。VarName[4][4]是数据集中每列的标题名

我真的很感激你的帮助

def heatmap(VarName):
    df = pd.DataFrame(columns=['ypos', 'xpos', 'val'])
    i = 0
    for x in range(1,5):
        for y in range(1,5):
            tempVar =  (VarName + "["+str(x)+"]["+str(y)+"]")
            df.loc[i] = [x,y,MD.at[0,tempVar]]
            i = i + 1
    ax = sns.heatmap(df.pivot('ypos', 'xpos', 'val'), annot=True)
    ax.invert_yaxis()
    ax.set_title(VarName)

heatmap("VarName")  # note the strings " "

这将输出与上面相同的热图加上一个标题,但来自一个函数

到目前为止,变量名只是零,所以请忽略这一点。
def heatmap(VarName):
    df = pd.DataFrame(columns=['ypos', 'xpos', 'val'])
    i = 0
    for x in range(1,5):
        for y in range(1,5):
            tempVar =  (VarName + "["+str(x)+"]["+str(y)+"]")
            df.loc[i] = [x,y,MD.at[0,tempVar]]
            i = i + 1
    ax = sns.heatmap(df.pivot('ypos', 'xpos', 'val'), annot=True)
    ax.invert_yaxis()
    ax.set_title(VarName)

heatmap("VarName")  # note the strings " "