目录
1 问题描述
最近在弄空间转录组学算法,跑别人代码的时候有时需要把图像可视化,调用scanpy.pl.spatial函数的时候出现下面的问题,说ColormapRegistry并没有get_cmap这个函数。
这是scanpy在调用matplotlib库的函数时出现的问题,get_cmap是matplotlib中的一个函数,用于获取指定名称的颜色映射。
2 解决方法
这可能是由于matplotlib不断升级,导致有些函数改变了位置(可能原因),现在get_cmap函数在matplotlib.cm中
具体的解决方法如下:
1)在scanpy库文件夹找到出问题的文件./scanpy/plotting/_tools/scatterplots.py并打开
2)在scatterplots.py中导入matplotlib库(前面找一行输入import matplotlib)
3)找到第163行(添加第二步中的语句前为162行)如下
4)将163行函数改为matplotlib.cm.get_cmap并保存
5)重新启动jupyter lab后就可以正常运行了