Spatial analysis most commonly refers to the interpretation and analysis of geographical data on a geometric plane. Although there are many platforms that are capable of managing, manipulating and analysing spatial data, Alteryx allows you to combine spatial and non-spatial data analysis in one powerful analytics package. The spatial tool palette in Alteryx contains 15 distinct tools each with unique features, which as a whole provides a wide range of functionality. This guide will cover how each tool can be used for a certain purpose in the realm of spatial analytics.

### Quick Information

Spatial data can be derived from Longitude and Latitude values, or extracted as spatial objects directly from certain file types. Conversely, spatial objects can be converted to numeric values, or exported directly within supported file types, some of which can be interpreted by other spatial analytics platforms.

There are 3 types of spatial objects: Point, Line and Polygon. A point is a reference to a single location, usually mapped from X and Y coordinates. A line is a representation of 2 or more points connected in a sequence. A polygon is the enclosed area of a 2D shape that is created from 3 or more points. Some Alteryx spatial tools specifically use a point spatial object to compute the output. In these cases, a line or polygon input would still work, as the tool would automatically determine the centroid of that spatial object. The centroid of a line is the point that is equidistant from both ends of the line, while the centroid of a polygon is the point that is the average of all points that make up the polygon.

Several spatial tools can calculate using drivetime and driving distance. Drivetime is the time that it takes to drive from one point to another, accounting for different speed zones, and driving distance is the length of the driving route between 2 points. You can only use drivetime and driving distance features if you have installed a location dataset for Alteryx, which requires a separate product license.

### Spatial Palette Tools

The **Buffer** tool inputs a spatial object, and expands or contracts its boundaries based on a configurable distance. For the purpose of optimisation, the number of points in the output is limited by default. You can remove the limit by unchecking the generalise option to obtain a more accurate buffer.

The **Create Points** tool inputs X (Longitude) and Y (Latitude) values and generates a point. By default, the tool takes traditional decimal format longitude and latitude as the input, but there are other options that allow it to process integer coordinates or coordinates from an alternative spatial reference system.

The **Distance** tool inputs 2 spatial objects and calculates the straight line distance between the point or centroid of the first spatial object, and the point or nearest edge of the second spatial object. There is also an option to calculate the drivetime and driving distance of the shortest route between the two spatial objects. In the output, you can select the unit of distance, as well as include the direction from the first spatial object to the second.

The **Find Nearest** tool inputs 2 spatial object fields from separate input connections and finds the nearest spatial object from the second input field (Universe) to every point or centroid of the first input field (Target). You can specify the number of nearest spatial objects in the output and the maximum distance for those nearest spatial objects.

The **Generalise** tool inputs a spatial object and reduces its number of points, effectively reducing its storage size. You can specify a threshold, which determines the maximum distance between the boundary of the generalised spatial object and the boundary of the original spatial object.

The **Heat Map** tool inputs a spatial object field and outputs polygons representing areas of different heat groups. The tool does this by creating square grid tiles and calculating the heat for each tile based on the density of spatial objects in that tile and their heat weighting, which can be optionally specified. Heat from any tile increases the heat in nearby tiles to a lesser extent, dropping off with distance. Tiles are then aggregated into heat categories and combined into a polygon for each heat category. You can configure the grid size, maximum distance that a tile affects the heat in nearby tiles, and the rate of decay that heat drops off from distance. The default output is smoothed so that the edges of the combined polygons are rounded, but this option can be unchecked. You can choose between the stacked option for the output, where each heat category polygon overlaps over the lower heat categories, or the donut option, where the polygons do not overlap.

The **Make Grid** tool inputs a spatial object field and generates grid tiles over the spatial objects. You can configure the grid size, and select whether to generate a single grid over all spatial objects or to generate a separate grid for each one. The latter option only accepts polygon input.

The **Non Overlap Drivetime** tool inputs a spatial object field and creates a polygon based on a configurable drivetime radius around each point or centroid, while ensuring the polygons do not overlap each other. You can configure the grid size, which the tool uses to divide the polygons and determine which point to allocate overlapping areas.

The **Poly-Build** tool inputs a point spatial object field and builds lines or polygons. There are 3 output options to decide from. The first one is to create a convex hull, which is the smallest convex polygon that contains all points. A convex polygon is a shape where all internal angles are less than 180 degrees. The second option creates a polygon by joining points in a specified order to form an enclosed shape, and the third option creates a line by joining points in the specified order. You can also choose to group by another field to create multiple lines or polygons.

The **Poly-Split** tool inputs a spatial object and splits it into its individual components. You can choose to split a polygon or line into the points that form it, split polygons with multiple regions into their individual regions, or split polygons into individual regions, while also treating any holes within polygons as separate regions.

The **Smooth** tool inputs a spatial object and increases its number of points, which is the opposite function of the Generalise tool. There are 3 levels of smoothing that can be done. The smooth option doubles the number of points, the very smooth options increases the number of points by 4 times, and the super smooth option increases the number of points by 8 times. You can configure the maximum radius of the corners of the smoothed spatial object. The output is post-generalised by default for optimisation, but this can be unchecked.

The **Spatial Info** tool inputs spatial objects and extracts spatial information from them. The output information options include: area, bounding rectangle, centroid, end points, length, number of parts, peano key and spatial object type. A bounding rectangle is the smallest rectangle polygon that encompasses a spatial object. A peano key is a single number created by merging the binary bits of both the longitude and latitude coordinates of a point, and converting the result to an integer.

The **Spatial Match** tool inputs 2 spatial object fields from separate input connections and matches them based on the selected spatial relationship. Like the Find Nearest tool, the first input field is called Target and the second input field is called Universe. Based on the spatial relationship, the universe spatial object is matched to a target spatial object when:

• target intersects universe: the universe overlaps or shares area with the target.

• target contains universe: the universe is fully encompassed by the target.

• target within universe: the universe fully encompasses the target.

• target touches universe: the universe shares a boundary with, but does not intersect the target.

• target touches or intersects universe: the universe shares a boundary or overlaps the target.

• target bounding rectangle overlaps universe: the bounding rectangle of the universe intersects the bounding rectangle of the target.

Additionally, there is a custom DE-9IM relationship option, which allows advanced users to input a DE-9IM string to define a custom spatial relationship.

The **Spatial Process** tool inputs 2 spatial objects and depending on the selected action, this tool creates a single spatial object output by:

• combine objects: merging both spatial objects into one.

• cut 1st from 2nd: removing the first spatial object and any overlapping area from the second spatial object.

• cut 2nd from 1st: removing the second spatial object and any overlapping area from the first spatial object.

• create intersection object: keeping only the overlapping area of both spatial objects.

• create inverse intersection object: keeping only the distinct areas of both spatial objects.

The **Trade Area** tool inputs a spatial object and creates a circle polygon around a point or centroid, sized based on the configured radius. The radius can be either a straight line distance or calculated from drivetime minutes.

And that’s all 15 Alteryx spatial tools. Hopefully, this proves to be a useful reference guide in your spatial analytics journey. Check out part 2 of this spatial analysis guide here, where I go over spatial functions outside of the spatial tool palette.