Vignettes
Run a complete analysis: Context → Question → Source → Pipe → Figure → Interpretation → Evidence. Each vignette treats the pipe as an executable scientific statement and makes its assumptions and boundaries visible. For a short introduction to the grammar, start with Learn.
Executable real-data notebooks
These eight notebooks use the same reviewed PRISM extract. Each tells a scientific story and includes working code, figures, Data used, Reproduce and See also sections. Read the shared structure.
Build a scientific cube
Add coordinates, units, and provenance; compare a map with a pixel history; then rotate the cube.
Begin with NumPy → 02 · You have observationsMake locations comparable
Reshape rows into a cube and use one clean verb to standardize every location through time.
Begin with pandas → 03 · You have several variablesAsk two questions of one Dataset
Select aligned variables, preserve their meanings, and compose a separate pipe for each question.
Begin with xarray → 04 · You want a readable methodWrite analysis as a sentence
Compare direct and piped calls, combine built-in and ordinary functions, and see the minimal grammar.
Learn the core pipe → 05 · You want possibilitiesExplore the verb gallery
Compare means, variance, anomalies, standardized values, project functions, and model-ready shapes.
Browse working verbs → 06 · You care about episodesFollow cold from value to event
Turn measurements into states, states into events, and events into a spatial relationship.
Follow the event story → 07 · Your project has a methodGive the project its own verb
Encode a scientific rule as a small callable factory and keep project assumptions visible.
Build a custom verb → 08 · Your cube is largerScale the same analysis lazily
Keep the grammar unchanged while Dask delays computation until the final result is needed.
Follow the lazy workflow →Keep the analytical sentence short
result = (
pipe(cube)
| v.anomaly(dim="time")
| v.mean(dim=("y", "x"), keep_dim=False)
).unwrap()
Put source acquisition and preparation before the pipe. Explain the baseline and interpretation after it. Remember that the semantic trace covers the pipe, not that preparation or later work. See anomaly and mean for their canonical argument reference.
Explore a noun
Three different objects, the same grammar. Each lesson uses frozen real source data, explains the baseline and limitations, and produces three inline figures.
Read a landscape at its native scale
Inspect a real hillside, center on a local baseline, and reduce the map to a west–east profile.
Explore elevation → Networks · Overture and OSMCompare mapped roads carefully
Keep native segments and classes, clip an explicit area, and measure length with two small project verbs.
Explore roads → Water · USGS stationsKeep the observations and their evidence
Inspect real discharge, subtract a one-day mean, and reuse the pipe at three identified stations.
Explore streamflow →References: elevation · roads · streamflow.
Other analyses and educational material
| Collection | What to expect |
|---|---|
| Working Lands | Executed notebook: observed hot-and-dry weather in South Dakota |
| South Dakota Decision Lab | One executable analysis; other questions are labeled dependency designs |
| Research workflows | Domain workflow directories and analysis reports |
| Fire VASE | Observed FIRED/gridMET examples and explicit renderer limitations |
| Synchrony | Methods and project vocabulary; not a second core grammar |
| Recipes | Task-oriented live-data code; provider access may be required |
| Examples and how-tos | Additional source and workflow guidance |
Reproduce
From the repository root:
python -m pip install -e ".[vignettes]"
python scripts/run_vignettes.py
The runner executes clean copies of all twelve supported notebooks, verifies static plots, and leaves source notebooks unchanged. MkDocs renders the same code and figures on the site. Validation records the real-data checks; live-data recipes are not covered by the offline claim.