title: Transparency for Poly3DCollection plot in matplotlib
body: <p>I am trying to draw some objects with the fabulous Matplotlib package for Python. These objects consist of points implemented with <code>plt.scatter()</code> and patches implemented with <code>Poly3DCollection</code>. I would like to have the patches with a slight transparency so that the points and edges behind the patches can be seen.</p>
  
  <p>Here the code and plot I already generated. Seems I am almost there, just missing the feature of transparency. Interestingly, if I first plot the <code>Ploy3DCollection</code> and afterwards the <code>scatter</code> points, the points can be seen, but not the edges.</p>
  
  <p>Anyone having a suggestion for me?</p>
  
  <p><img src="https://i.stack.imgur.com/YiKqj.png" alt="enter image description here"></p>
  
  <pre><code>from matplotlib import pyplot as plt
  from mpl_toolkits.mplot3d.art3d import Poly3DCollection
  
  fig = plt.figure()
  ax = fig.add_subplot(111, projection='3d')
  
  x = [0, 2, 1, 1]
  y = [0, 0, 1, 0]
  z = [0, 0, 0, 1]
  
  vertices = [[0, 1, 2], [0, 1, 3], [0, 2, 3], [1, 2, 3]]
  
  tupleList = list(zip(x, y, z))
  
  poly3d = [[tupleList[vertices[ix][iy]] for iy in range(len(vertices[0]))] for ix in range(len(vertices))]
  ax.scatter(x,y,z)
  ax.add_collection3d(Poly3DCollection(poly3d, facecolors='w', linewidths=1, alpha=0.5))
  
  plt.show()
  </code></pre>