## Display Streamlines Using Vector Data

### Wind Mapping Data

The MATLAB® vector data set called `wind` represents air currents over North America. This example uses a combination of techniques:

• Stream lines to trace the wind velocity

• Slice planes to show cross-sectional views of the data

• Contours on the slice planes to improve the visibility of slice-plane coloring

### 1. Determine the Range of the Coordinates

Load the data and determine minimum and maximum values to locate the slice planes and contour plots (`load`, `min`, `max`).

```load wind xmin = min(x(:)); xmax = max(x(:)); ymax = max(y(:)); zmin = min(z(:));```

### 2. Add Slice Planes for Visual Context

Calculate the magnitude of the vector field (which represents wind speed) to generate scalar data for the `slice` command. Create slice planes along the x-axis at `xmin`, `100`, and `xmax`, along the y-axis at `ymax`, and along the z-axis at `zmin`. Specify interpolated face coloring so the slice coloring indicates wind speed, and do not draw edges (`sqrt`, `slice`, `FaceColor`, `EdgeColor`).

```wind_speed = sqrt(u.^2 + v.^2 + w.^2); hsurfaces = slice(x,y,z,wind_speed,[xmin,100,xmax],ymax,zmin); set(hsurfaces,'FaceColor','interp','EdgeColor','none') colormap turbo```

### 3. Add Contour Lines to the Slice Planes

Draw light gray contour lines on the slice planes to help quantify the color mapping (`contourslice`, `EdgeColor`, `LineWidth`).

```hcont = ... contourslice(x,y,z,wind_speed,[xmin,100,xmax],ymax,zmin); set(hcont,'EdgeColor',[0.7 0.7 0.7],'LineWidth',0.5)```

### 4. Define the Starting Points for Stream Lines

In this example, all stream lines start at an x-axis value of 80 and span the range 20 to 50 in the y-direction and 0 to 15 in the z-direction. Save the handles of the stream lines and set the line width and color (`meshgrid`, `streamline`, `LineWidth`, `Color`).

```[sx,sy,sz] = meshgrid(80,20:10:50,0:5:15); hlines = streamline(x,y,z,u,v,w,sx,sy,sz); set(hlines,'LineWidth',2,'Color','r') ```

### 5. Define the View

Set up the view, expanding the z-axis to make it easier to read the graph (`view`, `daspect`, `axis`).

```view(3) daspect([2,2,1]) axis tight``` See `coneplot` for an example of the same data plotted with cones.