在使用matplotlib创建3D散点图时,我注意到当点的alpha(透明度)变化时,它们的绘制方式会因为旋转视角的不同而发生变化。下面的示例图片是同一个图形稍微旋转后的结果,这导致了alpha值神秘地反转。有没有人熟悉这种行为并知道如何解决?看起来'zorder'(绘制顺序)是整个散点图调用的单个值。
重现简化示例代码:
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(projection="3d")
X = [i for i in range(10)]
Y = [i for i in range(10)]
Z = [i for i in range(10)]
S = [(i+1)*400 for i in range(10)]
A = [i/10 for i in range(10)]
ax.scatter(xs=X, ys=Y, zs=Z, s=S, alpha=A)
plt.show()
- Python 3.9.5
- matplotlib 3.5.1