# [Matplotlib-users] 3D scatter plot with 'unlimited' Z axis

Benjamin Root ben.v.root at gmail.com
Mon Oct 1 16:10:13 EDT 2018

``````
x = np.arange(256)
y = np.arange(256)
xx, yy = np.meshgrid(x, y)
```
Then your `xx` and `yy` will be 2D, just like your `ll` variable. Then, you
pass the flattened versions of those three variables (i.e., `xx.flatten()`
or `xx.flat`) to the 3d scatter call.

I hope that helps!
Ben Root

On Mon, Oct 1, 2018 at 3:47 PM Will Furnell <mail at willfurnell.com> wrote:

> Hey everyone,
>
> I'm looking into a 3D scatter plot - basically converting a NumPy array
> to a 3D plot, where X and Y correspond to the X and Y co-ordinates on
> the graph and the Z values corresponds to a particular height on the graph.
>
> This is how I'm generating the lists:
>
>
> x = list(range(0, 256))
> y = list(range(0, 256))
> z = []
>
> for i in range(0, 255):
>     for j in range(0, 255):
>         z.append(ll[i][j])
>
> where ll is my 2D array...
>
> I've seen the scatter function with 3d projection, but this requires the
> Z array length to be the same length as the X and Y lengths, whereas
> I'll need to be plotting X*Y points (256*256). Is there some way that I
> could achieve this?
>
> Thanks,
>
> Will.
> _______________________________________________
> Matplotlib-users mailing list
> Matplotlib-users at python.org
> https://mail.python.org/mailman/listinfo/matplotlib-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/matplotlib-users/attachments/20181001/33be122c/attachment.html>
```