estimates the best variogram function from values vali given at locations loci.


generates the same result.


estimates the best parameters of the variogram function specified by "model".


estimates the non-numeric parameters in params.

Details and Options

  • Variogram model is also known as variogram and semivariogram.
  • EstimatedVariogramModel fits a model to the spatial field data and returns a VariogramModel.
  • VariogramModel is typically used as a local model of spatial dependence when predicting values of a spatial field, as in SpatialEstimate.
  • The variogram for a spatial process at locations and is given by . It is a measure of how quickly the process varies spatially.
  • When a process is weakly stationary, then the variogram depends only the difference of locations, i.e. . And when the process is isotropic, it only depends on the distance between locations gamma(TemplateBox[{{{p, _, 1}, -, {p, _, 2}}}, Norm]).
  • Typical examples of spatial field data that is stationary and isotropic together with the corresponding variogram.
  • With automatic settings, this is all that is needed, but if you want to provide detailed control over the variogram model there are further aspects to understand. The two main issues are the range and level of smoothing.
  • The range for the variogram indicates how far the dependence on nearby points extends. A larger range variogram will correspond to a slower varying field.
  • The range of the variogram controls the distance at which points influence the range of prediction of values in SpatialEstimate.
  • The smoothness of the prediction is affected by the so-called spatial noise variance of the variogram, which is the value at the origin. It corresponds to adding a white noise model, e.g. measurement errors or true discontinuities in data such as a gold nugget.
  • The size of the spatial noise variance controls the level of smoothing of values in SpatialEstimate. In particular, with a nonzero noise variance, the resulting surface will not interpolate the given values but instead approximate them.
  • The locations loci can have the forms:
  • {p1,,pd}geometrical locations
    GeoPosition[],GeoPositionENU[],geographical locations
  • The values vali can have the forms:
  • ciscalar value
    Quantity[ci,"unit"]scalar quantity
  • The models need to satisfy consistency conditions to be a valid spatial variogram. It must be a non-negative function and satisfy the conditionally negative definite condition sum_(i=1)^nsum_(j=1)^nw_i w_j gamma(TemplateBox[{{{p, _, i}, -, {p, _, j}}}, Norm])<=0 for all weights wi such that and locations pi. The valid model families can be grouped into tables with similar features, and these are enumerated in VariogramModel.
  • The following options can be given:
  • SpatialNoiseLevel Automaticspecify the noise variance in the model
    SpatialTrendFunction Automaticspecify the global trend model


open allclose all

Basic Examples  (2)

Estimate a variogram model for concentrations of zinc in soil:

Estimate exponential variogram model:

Extract the sill and range information:

Value at a given distance:

Plot variogram function:

Estimate a white noise variogram model for random data:

Estimate white noise variogram model:

Scope  (2)

Estimate variogram model for geographical data:

Fit a few models with slow initial variation:

Visualize the fit of variogram models to the binned variogram of the data:

Estimate a variogram model from a binned variogram:

Compute the binned variogram:

Estimate a variogram model:

Options  (3)

SpatialNoiseLevel  (1)

Specify noise level using SpatialNoiseLevel:

Estimate variogram model assuming zero noise level:

Estimate variogram model assuming positive noise level:

Compare model parameters:

SpatialTrendFunction  (2)

Specify trend function using SpatialTrendFunction:

Estimate variogram model assuming constant trend:

Estimate variogram model assuming linear trend:

Compare model parameters:

Look at data with a linear trend:

Without detrending, the variogram is well fit by an unbounded model:

Removing the large scale trend gives us a better idea of the micro scale variation:

Applications  (2)

Estimate a variogram model for SpatialPointData:

Compute the BinnedVariogramList to get an idea of which model family to choose:

Fit a few asymptotic variogram models:

Visualize the fit of the variogram models to the binned variogram of the data:

Out of the four models, Matern fits best and could be used for spatial estimation:

Use fit residuals to choose the best variogram model:

Fit a few variogram models:

Compute the weighted sum of residuals from the fit:

Visualize the fit of variogram models to the binned variogram of the data:

Choose the model with the smallest weighted sum of residuals and use it to compute spatial estimate:

Possible Issues  (1)

Some variogram models are badly suited for a given data:

Switch to a different model:

Wolfram Research (2021), EstimatedVariogramModel, Wolfram Language function,


Wolfram Research (2021), EstimatedVariogramModel, Wolfram Language function,


Wolfram Language. 2021. "EstimatedVariogramModel." Wolfram Language & System Documentation Center. Wolfram Research.


Wolfram Language. (2021). EstimatedVariogramModel. Wolfram Language & System Documentation Center. Retrieved from


@misc{reference.wolfram_2024_estimatedvariogrammodel, author="Wolfram Research", title="{EstimatedVariogramModel}", year="2021", howpublished="\url{}", note=[Accessed: 24-June-2024 ]}


@online{reference.wolfram_2024_estimatedvariogrammodel, organization={Wolfram Research}, title={EstimatedVariogramModel}, year={2021}, url={}, note=[Accessed: 24-June-2024 ]}