等同于MATLAB spy的scipy

发布于 2021-01-29 17:16:15

我一直在将用于isomap算法的代码从MATLAB移植到Python。我正在尝试使用间谍功能可视化稀疏模式。

MATLAB命令:

spy(sparse(A));
drawnow;

Python命令:

matplotlib.pyplot.spy(scipy.sparse.csr_matrix(A))
plt.show()

我无法使用上述命令在Python中重现MATLAB结果。仅对非稀疏格式的A使用命令会产生与MATLAB相当相似的结果。但这花费了相当长的时间(A是2000乘2000)。稀疏函数对于scipy的MATLAB等效项是什么?

关注者
0
被浏览
196
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    也许这是你的版本matplotlib,让麻烦,至于我scipy.sparsematplotlib.pylab工作得很好。

    请参见下面的示例代码,该代码会生成“间谍”图。

    import matplotlib.pylab as plt
    import scipy.sparse as sps
    A = sps.rand(10000,10000, density=0.00001)
    M = sps.csr_matrix(A)
    plt.spy(M)
    plt.show()
    
    # Returns here '1.3.0'
    matplotlib.__version__
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看