我有一个基于Mayavi的应用程序,我让用户为某些数据指定一个色彩映射表。因为较新版本的Matplotlib具有Mayavi缺少的色彩图,所以我希望能够使用原生Mayavi色彩图或根据Matplotlib色彩图制作查找表,如果Mayavi不提供它。
我可以尝试使用用户提供的名称并捕获引发的TraitError,但我只是根据现有的颜色列表检查提供的名称。例如,在Matplotlib我会做
import matplotlib.pyplot as plt
def is_mpl_cmap(name):
if name in dir(plt.cm):
return True
return False
我可以访问Mayavi中是否有类似的色彩映射名称存储库?
答案 0 :(得分:3)
from mayavi.core import lut_manager
def is_tvtk_cmap(name): return name in lut_manager.lut_mode_list()