Interpolate scattered 3D spatial data onto regular grids using Ordinary Kriging or Inverse Distance Weighting (IDW). Built on top of PyKrige and scikit-learn, with built-in preprocessing, cross-validation, and interactive visualizations.
import pandas as pd
from py3dinterpolations import GridData, interpolate
# load your spatial data (columns: ID, X, Y, Z, V)
df = pd.read_csv("measurements.csv")
griddata = GridData(df)
# interpolate onto a regular 3D grid
modeler = interpolate(
griddata=griddata,
model_type="ordinary_kriging",
grid_resolution=5.0,
model_params={"variogram_model": "linear", "nlags": 6, "weight": True},
)
# access results
result = modeler.result # InterpolationResult with .interpolated array
Features¶
- Interpolation — Ordinary 3D Kriging and IDW out of the box
- Preprocessing — downsampling, coordinate normalization, signal standardization
- Cross-validation — parameter grid search for kriging models
- Visualization — 2D slices with matplotlib, interactive 3D with plotly
