Ripser.py是一个用于持续同伦 (Persistent homology) 的Python库,其在C++ Ripser的基础上构建,提供了一些诸如以下的强大接口:
参考地址:https://ripser.scikit-tda.org/en/latest/index.html
Pipser库依赖于Cython库:
pip install cython
pip install ripser
可以通过以下代码测试是否安装成功:
import numpy as np
from ripser import ripser
from persim import plot_diagramsdata = np.random.random((100, 2))
diagrams = ripser(data)['dgms']
plot_diagrams(diagrams, show=True)
输出如下:
关于图中的H0H_0H0和H1H_1H1:
以上代码还可以有以下替代方式:
import numpy as np
import matplotlib.pyplot as plt
from ripser import Ripsrips = Rips()
data = np.random.random((100,2))
diagrams = rips.fit_transform(data)
rips.plot(diagrams)
plt.show()
此时的绘制结果会有些许不同: