Skip To Content

Spline

Available with Spatial Analyst license.

Available with 3D Analyst license.

Summary

Interpolates a raster surface from points using a two-dimensional minimum curvature spline technique.

The resulting smooth surface passes exactly through the input points.

Learn more about how Spline works

Usage

  • The Regularized option of Spline type usually produces smoother surfaces than those created with the Tension option.

    • With the Regularized option, higher values used for the weight parameter produce smoother surfaces. The values entered for this parameter must be equal to or greater than zero. Typical values used are 0, 0.001, 0.01, 0.1, and 0.5. The Weight is the square of the parameter referred to in the literature as tau (t).

    • With the Tension option, higher values entered for the weight parameter result in somewhat coarser surfaces, but surfaces that closely conform to the control points. The values entered must be equal to or greater than zero. Typical values are 0, 1, 5, and 10. The Weight is the square of the parameter referred to in the literature as phi (Φ).

  • The greater the value of Number of Points, the smoother the surface of the output raster.

  • Some input datasets may have several points with the same x,y coordinates. If the values of the points at the common location are the same, they are considered duplicates and have no effect on the output. If the values are different, they are considered coincident points.

    The various interpolation tools may handle this data condition differently. For example, in some cases, the first coincident point encountered is used for the calculation; in other cases, the last point encountered is used. This may cause some locations in the output raster to have different values than what you might expect. The solution is to prepare your data by removing these coincident points. The Collect Events tool in the Spatial Statistics toolbox is useful for identifying any coincident points in your data.

  • See Analysis environments and Spatial Analyst for additional details on the geoprocessing environments that apply to this tool.

Syntax

Spline (in_point_features, z_field, {cell_size}, {spline_type}, {weight}, {number_points})
ParameterExplanationData Type
in_point_features

The input point features containing the z-values to be interpolated into a surface raster.

Feature Layer
z_field

The field that holds a height or magnitude value for each point.

This can be a numeric field or the Shape field if the input point features contain z-values.

Field
cell_size
(Optional)

The cell size at which the output raster will be created.

This will be the value in the environment if it is explicitly set; otherwise, it is the shorter of the width or the height of the extent of the input point features, in the input spatial reference, divided by 250.

Analysis Cell Size
spline_type
(Optional)

The type of spline to be used.

  • REGULARIZED Yields a smooth surface and smooth first derivatives.
  • TENSION Tunes the stiffness of the interpolant according to the character of the modeled phenomenon.
String
weight
(Optional)

Parameter influencing the character of the surface interpolation.

When the REGULARIZED option is used, it defines the weight of the third derivatives of the surface in the curvature minimization expression. If the TENSION option is used, it defines the weight of tension.

The default weight is 0.1.

Double
number_points
(Optional)

The number of points per region used for local approximation.

The default is 12.

Long

Return Value

NameExplanationData Type
out_raster

The output interpolated surface raster.

It is always a floating-point raster.

Raster

Code sample

Spline example 1 (Python window)

This example inputs a point shapefile and interpolates the output surface as a TIFF raster.

import arcpy
from arcpy import env  
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outSpline = Spline("ozone_pts.shp", "ozone", 2000, "REGULARIZED", 0.1)
outSpline.save("C:/sapyexamples/output/splineout.tif")
Spline example 2 (stand-alone script)

This example inputs a point shapefile and interpolates the output surface as a Grid raster.

# Name: Spline_Ex_02.py
# Description: Interpolate a series of point features onto a 
#    rectangular raster using a minimum curvature spline technique.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inPntFeat = "ozone_pts.shp"
zField = "ozone"
cellSize = 2000.0
splineType = "REGULARIZED"
weight = 0.1

# Execute Spline
outSpline = Spline(inPntFeat, zField, cellSize, splineType, weight)

# Save the output 
outSpline.save("C:/sapyexamples/output/splineout02")

Licensing information

  • ArcGIS Desktop Basic: Requires Spatial Analyst or 3D Analyst
  • ArcGIS Desktop Standard: Requires Spatial Analyst or 3D Analyst
  • ArcGIS Desktop Advanced: Requires Spatial Analyst or 3D Analyst

Related topics