Python: Is there a way to plot a "partial" surface plot with Matplotlib?
<p>I wanted to plot a "partial" surface plot like the following one with Matplotlib
<a href="https://i.stack.imgur.com/7lwi9.png" rel="noreferrer"><img src="https://i.stack.imgur.com/7lwi9.png" alt="example"></a></p>

<p>Note that it's not a complete meshgrid on X-Y plane but missing a corner from top view. The following is the code I tried but didn't work. </p>

<pre><code>import numpy as np
from matplotlib import pyplot
from mpl_toolkits.mplot3d import Axes3D

X = np.array([[0,1],
              [0,1,2],
              [0,1,2,3],
             ])
Y = np.array([[0,0],
              [1,1,1],
              [2,2,2,2],
             ])
Z = np.array([[0.5, 0.6],
              [0.7, 0.8, 0.9],
              [1.0, 1.1, 1.2, 1.3],
             ])
fig = pyplot.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot_surface(X,Y,Z)
</code></pre>

<p>The error being:</p>

<blockquote>
  <p>ValueError: setting an array element with a sequence.</p>
</blockquote>

<p>Any pointer would be appreciated!
Thanks!</p>