【问题标题】:How to visualise means with Seaborn?如何使用 Seaborn 可视化方式?
【发布时间】:2021-02-13 19:47:40
【问题描述】:

我有一个具有以下结构的 Pandas 数据框:

     alpha  beta  gamma       mse
0     0.00  0.00   0.00  0.000000
1     0.05  0.05   0.90  0.025411
2     0.05  0.10   0.85  0.025794
3     0.05  0.15   0.80  0.026289
4     0.05  0.20   0.75  0.025320
..     ...   ...    ...       ...
148   0.75  0.05   0.20  0.026816
149   0.75  0.10   0.15  0.025817
150   0.75  0.15   0.10  0.025702
151   0.80  0.05   0.15  0.027104
152   0.80  0.10   0.10  0.025936

我想用热图可视化数据框,其中 alpha 表示在 x 轴上,beta 表示在 y 轴上,并且对于晶格的每个正方形,计算所有 gamma 的平均 MSE。有没有使用 Seaborn 的简单方法来做到这一点?

提前致谢。

【问题讨论】:

  • 我还是不明白gammamse。你有一张带有alpha-beta 的二维地图。似乎对于 0.05 x 0.05 的每个正方形,您有两个数字:gammaMSE of all gammas??。我说的对吗?

标签: python pandas seaborn data-visualization heatmap


【解决方案1】:

对于您展示的内容,是的,您可以这样做:

sns.heatmap(df.pivot_table(index='beta', columns='alpha', values='mse'))

【讨论】:

    【解决方案2】:

    所有的计算都应该在你的 DataFrame 中完成。 获得数据后,您可以使用旋转的 DataFrame 来构建热图

    import matplotlib.pyplot as plt
    import seaborn as sns
    import pandas as pd
    
    # Assuming that you have the df variable with your data
    
    # pivot the data
    pivoted = df.pivot('alpha', 'beta', 'mse')
    
    # plot the heatmap
    sns.heatmap(pivoted, annot=True)
    plt.show()
    

    更多信息见官方文档:https://seaborn.pydata.org/generated/seaborn.heatmap.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-02
      • 1970-01-01
      • 1970-01-01
      • 2023-02-02
      • 1970-01-01
      • 2023-01-20
      • 2018-03-20
      • 2019-06-21
      相关资源
      最近更新 更多