t.vect.observe.strds(1grass)
π t.vect.observe.strds π
okay bestie, sit down, hydrate, because we're about to get so temporal. this is t.vect.observe.strds, straight out of the GRASS User's Manual (yes, the GRASS 8.5.0 Reference Manual, the one and only π). it's a GRASS GIS module, and it is genuinely iconic.
β¨ NAME β¨
t.vect.observe.strds β observes specific locations in a space time raster dataset over a period of time using vector points. π
π¦ KEYWORDS π¦
temporal, sampling, vector, time
πΈ SYNOPSIS πΈ
t.vect.observe.strds
t.vect.observe.strds --help
t.vect.observe.strds input=name strds=name[,name,...] output=name
vector_output=name columns=string[,string,...] [where=sql_query]
[--overwrite] [--help] [--verbose] [--quiet] [--ui]
π Flags
--overwriteβ lets output files straight-up overwrite files that already exist. no cap, it will just replace them.--helpβ prints the usage summary. your little safety net.--verboseβ verbose module output, i.e. the module tells you everything. chatty king.--quietβ quiet module output. the "do not perceive me" mode.--uiβ forces the GUI dialog to launch. for the visual girlies.
π Parameters
input=name[required] β Name of input vector map. Or a data source for direct OGR access.strds=name[,name,...][required] β Name of the input space time raster datasets. yes, plural, you can feed it several.output=name[required] β Name of the output space time vector dataset.vector_output=name[required] β Name of the new created vector map that stores the sampled values in different layers.columns=string[,string,...][required] β Names of the vector columns to be created and to store sampled raster values, one name for each STRDS. one column per STRDS, fr fr, no skipping.where=sql_queryβ WHERE conditions of SQL statement without 'where' keyword. Example:income < 1000 and population >= 10000.
π DESCRIPTION π
The module t.vect.observe.strds is used to observe specific locations in a space time raster dataset over a period of time using vector points. and honestly? she's serving.
The first input is a vector map layer with vector points. The second input is one or several space time raster datasets (STRDS) that should be sampled over time at the vector point positions. The space time raster dataset will be sampled over its whole temporal extent (from start to end) β like, the entire glow-up arc, start to finish, no cherry-picking. A column name must be specified for each input space time raster dataset.
The result is a new space time vector dataset that contains a single (new) vector map which links to as many time-stamped attribute tables as raster map layers are present in the input space time raster dataset. Hence, for each time step in the space time raster dataset a new attribute table is created. The GRASS Temporal Framework allows to time stamp attribute tables that can be linked to a single vector map layer. so like... one main character vector map, but every timestamp gets its own little attribute table bestie. obsessed.
The module v.what.rast is used internally for sampling the time stamped raster map layers. All sampled values of a single time stamped raster map layer are written into a new time stamped attribute table.
Use t.vect.db.select to print attribute values of the space time vector dataset to stdout. π
π§ EXAMPLE π§
The example shows how to create a space time vector dataset and a vector layer starting from a point vector and a space time raster dataset:
t.vect.observe.strds input=precip_30ynormals_3d strds=tempmean_monthly \
output=precip_stations vect=precip_stations_monthly \
columns=month
then a little vibe check with t.info:
t.info precip_stations type=stvds
and here's what she returns, verbatim, every number sacred:
+-------------------- Space Time Vector Dataset -----------------------------+
| |
+-------------------- Basic information -------------------------------------+
| Id: ........................ precip_stations@climate_2009_2012
| Name: ...................... precip_stations
| Mapset: .................... climate_2009_2012
| Creator: ................... lucadelu
| Temporal type: ............. absolute
| Creation time: ............. 2014-12-02 00:42:39.187615
| Modification time:.......... 2014-12-02 00:42:55.215169
| Semantic type:.............. mean
+-------------------- Absolute time -----------------------------------------+
| Start time:................. 2009-01-01 00:00:00
| End time:................... 2013-01-01 00:00:00
| Granularity:................ 1 month
| Temporal type of maps:...... interval
+-------------------- Spatial extent ----------------------------------------+
| North:...................... 306221.830194
| South:...................... 27606.895351
| East:.. .................... 917004.829165
| West:....................... 151768.568246
| Top:........................ 1615.44
| Bottom:..................... 2.4384
+-------------------- Metadata information ----------------------------------+
| Vector register table:...... vector_map_register_be074525097c4088997c9a1979f17065
| Number of points ........... 6664
| Number of lines ............ 0
| Number of boundaries ....... 0
| Number of centroids ........ 0
| Number of faces ............ 0
| Number of kernels .......... 0
| Number of primitives ....... 6664
| Number of nodes ............ 0
| Number of areas ............ 0
| Number of islands .......... 0
| Number of holes ............ 0
| Number of volumes .......... 0
| Number of registered maps:.. 49
|
| Title:
| Observaion of space time raster dataset(s) tempmean_monthly
| Description:
| Observation of space time raster dataset(s) tempmean_monthly with vector map precip_30ynormals_3d
| Command history:
| # 2014-12-02 00:42:39
| t.vect.observe.strds input="precip_30ynormals_3d"
| strds="tempmean_monthly" output="precip_stations"
| vect="precip_stations_monthly" columns="month"
|
+----------------------------------------------------------------------------+
(yes, "Observaion" β that's literally how it's spelled in the output, we do not fix the module's typo, we respect the artifact π)
and then v.info:
v.info precip_stations_monthly
+----------------------------------------------------------------------------+
| Name: precip_stations_monthly |
| Mapset: climate_2009_2012 |
| Project: nc_spm_temporal_workshop |
| Database: /grassdata |
| Title: North Carolina 30 year precipitation normals (3D) |
| Map scale: 1:1 |
| Name of creator: neteler |
| Organization: |
| Source date: Wed May 9 14:32:39 2007 |
| Timestamp (first layer): none |
|----------------------------------------------------------------------------|
| Map format: native |
|----------------------------------------------------------------------------|
| Type of map: vector (level: 2) |
| |
| Number of points: 136 Number of centroids: 0 |
| Number of lines: 0 Number of boundaries: 0 |
| Number of areas: 0 Number of islands: 0 |
| Number of faces: 0 Number of kernels: 0 |
| Number of volumes: 0 Number of holes: 0 |
| |
| Map is 3D: Yes |
| Number of dblinks: 49 |
| |
| Projection: Lambert Conformal Conic |
| |
| N: 306221.830194 S: 27606.895351 |
| E: 917004.829165 W: 151768.568246 |
| B: 2.4384 T: 1615.44 |
| |
| Digitization threshold: 0 |
| Comment: |
| |
+----------------------------------------------------------------------------+
slay. 136 points, 49 dblinks, Lambert Conformal Conic. a whole queen. π
π«Ά SEE ALSO π«Ά
t.create, t.info, t.vect.db.select, t.vect.what.strds
go read those next, bestie, they're the friend group.
β AUTHOR β
SΓΆren Gebbert, ThΓΌnen Institute of Climate-Smart Agriculture
π SOURCE CODE π
Available at: t.vect.observe.strds source code (history)
Latest change: Saturday Oct 11 04:38:40 2025 in commit: 3dd71f5fab83b72a2db2da959fe075c5b3b52200
Main index | Temporal index | Topics index | Keywords index | Graphical index | Full index
and that's the whole page π thanks for reading, you're doing amazing, drink water, and remember: this was the GRASS 8.5.0 Reference Manual, Β© 2003-2026 GRASS Development Team, running as GRASS 8.5.0, page t.vect.observe.strds(1grass). bye bestie, go sample something π¦β¨
π¦ where this page comes from
- alpine 3.24: grass-gis-doc 8.5.0-r1 Β· GPL-2.0-or-later
- ubuntu stonking: grass-doc 8.5.0-1ubuntu1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms