【问题标题】:Visualize a co-occurrence matrix in pandas/numpy在 pandas/numpy 中可视化一个共现矩阵
【发布时间】:2016-10-04 12:56:58
【问题描述】:

我计算了一个数组,其中有多少% 的排列包含所有不同的对组合。现在我想将其可视化为例如热图。我有以下计算代码:

#occurrences matrix
a = np.array(np.array_split(np.random.binomial(1,.5,30),10), dtype='f')

#co-occurrences matrix
acov=np.dot(a.T, a)
acov[np.diag_indices_from(acov)]=0
acov /= acov.sum()

然后我尝试这个进行可视化:

plt.imshow(acov,interpolation='nearest')
plt.colorbar()
plt.show()

但是我真的不知道我在做什么,我第一次使用热图所以不确定我看到了什么。我想要的是一个与数组形状相同的图形,其中每个正方形都有一个颜色强度,表示它在 0-1 的范围内有多大。

【问题讨论】:

    标签: python arrays numpy pandas matplotlib


    【解决方案1】:

    这个呢?

    plt.imshow(acov,interpolation='nearest', cmap='Reds')
    plt.colorbar()
    plt.show()
    

    使用seaborn.heatmap():

    sns.heatmap(acov)
    

    【讨论】:

    • 我不想再添加另一个依赖项,因为我已经有了 pyplot。
    • 那么您可能需要检查this answer
    • @user3139545,你安装了pylab 模块吗?
    • 我确实尝试过 seaborn,这正是我想要的,对于您的下一个示例,我不明白 x 和 y 轴的实际显示是什么?为什么是 -0.5 到 2.5?
    • 为什么是 6x6 矩阵而不是 3x3?
    猜你喜欢
    • 2014-01-01
    • 1970-01-01
    • 2022-01-20
    • 2021-07-22
    • 2017-09-11
    • 1970-01-01
    • 2018-05-31
    • 2017-06-14
    相关资源
    最近更新 更多