如何关闭Matplotlib 3D散点图中的透明度?
我正在使用Matplotlib的Axes3D来创建一个带有自定义颜色的散点图,代码如下:
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会自动给远处的点添加一些阴影效果,让远离观察者的点看起来更透明或者颜色更浅。这使得我们很难直观地比较每个点的颜色。
有没有办法关闭这个效果呢?
2 个回答
1
只需要在散点图的函数里加上 alpha = 1
这个参数就可以了。
ax.scatter(xval, yval, zval, c=cval, alpha = 1, cmap=plt.cm.gray)
5
你需要在散点图的函数里加上 depthshade=False
这个参数。
ax.scatter(xval, yval, zval, c=cval, cmap=plt.cm.gray, depthshade=False)