2014-02-14 73 views
1

我使用mpl_toolkits繪製使用Axes3D和plot_surface的3d中的曲面。Matplotlib 3D繪圖顏色顯示爲比正常陰暗

我想象以下列方式輸出, enter image description here

你可以清楚地看到,有一個灰色的色調到整個表面時,顏色都應該像右側的彩條。

我在其他幾個做類似事情的情節中看到了這種行爲。例如這裏https://stackoverflow.com/a/20475233/2495342

我正在使用python的最新anaconda發行版,並在使用Qt4Agg後端的spyder中運行我的代碼。我在linux和windows下獲得相同的行爲。使用不同的色彩地圖也無濟於事。可視化總是呈灰色。

我還沒有找到很多幫助通過谷歌,所以任何幫助表示讚賞。

這裏是一個快速演示

import numpy as np 
from matplotlib import pyplot 
from matplotlib import cm 
from mpl_toolkits.mplot3d import Axes3D 

X, Y = np.meshgrid(np.arange(-1, 1, 0.1), np.arange(-1, 1, 0.1)) 
Z = np.zeros_like(X) 

F = np.sqrt(X**2 + Y**2) 
F -= np.min(F) 
F /= np.max(F) 

fig = pyplot.figure() 
ax = fig.gca(projection='3d') 
ax.plot_surface(X, Y, Z, rstride=1, cstride=1, facecolors=cm.coolwarm(F)) 

它返回

enter image description here

+0

能表現出一些(pasteble)的源代碼 - 這將使它更容易調查你的問題。 – Dietrich

+0

@Dietrich好吧,添加了一個快速演示,顯示相同的行爲 – abnowack

回答

2

使用shade說法:

ax.plot_surface(X, Y, Z, rstride=1, cstride=1, 
       facecolors=cm.coolwarm(F), shade=False) 
+0

完美,非常感謝你! – abnowack

相關問題