2013-02-03 189 views
6

我使用Matplotlib的Axes3D來創建自定義顏色像這樣的散點圖:如何在Matplotlib的3D散點圖中關閉透明度?

from mpl_toolkits.mplot3d import Axes3D 
from matplotlib import pyplot as plt 

fig = plt.figure(1) 
ax = Axes3D(fig) 
ax.scatter(xval, yval, zval, c=cval, cmap=plt.cm.gray) 

這工作得很好,但matplotlib自動添加了一些陰影,使更多的遠點顯得更透明/較亮的顏色比接近點。這使得很難直觀地比較各個點的顏色。

有什麼方法可以關閉它嗎?

回答

0

這實際上也是Matplotlib的二維圖散點圖的一個特徵,這裏有一個question,它有一個潛在的解決方案。

Scatter的輸入是實際需要配置的。

+1

我不確定這個問題是否解決了同樣的問題,因爲我只有一個繪圖(並且我的顏色標準化爲介於0和1之間)。唯一的問題是由matplotlib添加的人工透明度來傳達深度感。 – Benno

+0

我認爲[這](http://stackoverflow.com/questions/15533246/controlling-alpha-value-on-3d-scatter-plot-using-python-and-matplotlib)將回答你的問題 – kungphil