我想使用matplotlib的colormap,它没有集成在mayavi上,用于打印一些3D图形。有问题的颜色图是"文明"。而且,在尝试了许多不同的方法之后,我还是做不到。我需要的是使用colormap来绘制mlab。mesh
欢迎任何帮助!由于
我只是有一个非常类似的问题,但与plot3d
,并发现几个链接有用:https://gist.github.com/scholich/a1b0142acfbad4420575和https://docs.enthought.com/mayavi/mayavi/auto/example_custom_colormap.html
我的解决方案是这样的:
import numpy as np
from mayavi import mlab
import matplotlib.pyplot as plt
cmap = plt.get_cmap('viridis')
cmaplist = np.array([cmap(i) for i in range(cmap.N)]) * 255
x, y, z = X.T # X is an array representing a trajectory in 3D space
t = np.linspace(0, 1, len(X))
pts = mlab.plot3d(x, y, z, t)
pts.module_manager.scalar_lut_manager.lut.table = cmaplist
希望这对你有帮助。