# How to Generate a 3D Meshgrid Array in Numpy

We will learn how to generate a 3D meshgrid array in Numpy.

## Generating Three Arrays

First, we will generate 3 arrays:

```import numpy as np

xs = np.linspace(0., 1., 2)
ys = np.linspace(1., 2., 2)
zs = np.linspace(3., 4., 2)

print(f"X values: \n {xs}")
print(f"Y values: \n {ys}")
print(f"Z values: \n {zs}")

```

Obviously, they look like this:

## Generating a 3D Meshgrid Array

To generate a 3D meshgrid array, we can use the meshgrid() function and pass the created arrays as parameters.

```import numpy as np

xs = np.linspace(0., 1., 2)
ys = np.linspace(1., 2., 2)
zs = np.linspace(3., 4., 2)

meshgrid_array = np.meshgrid(xs, ys, zs)
print(f"My 3d meshgrid array: \n {meshgrid_array}")

```

This will create a 3D array that contains all the possible combinations of the values in the three input arrays.

Here is what a 3D meshgrid array looks like:

## Other Ways to Generate a 3D Meshgrid Array

In addition to the meshgrid() function, there are other ways to generate a 3D meshgrid array in Numpy. Here are a few examples:

Use the product() function. The product() function takes a list of arrays and returns a new array that contains the product of all the elements in the list.