t.vect.observe.strds(1)
π t.vect.observe.strds π
okay bestie, so this is t.vect.observe.strds from the GRASS GIS User's Manual, and honestly? it's giving temporal-sampling main character energy. it's a lil stalker (affectionate) that watches specific spots over time. let's get into it π
β¨ 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β Allow output files to overwrite existing files--helpβ Print usage summary--verboseβ Verbose module output--quietβ Quiet module output--uiβ Force launching GUI dialog
π§ Parameters
input=name[required] β Name of input vector map Or data source for direct OGR accessstrds=name[,name,...][required] β Name of the input space time raster datasetsoutput=name[required] β Name of the output space time vector datasetvector_output=name[required] β Name of the new created vector map that stores the sampled values in different layerscolumns=string[,string,...][required] β Names of the vector columns to be created and to store sampled raster values, one name for each STRDSwhere=sql_queryβ WHERE conditions of SQL statement without'where'keyword Example:income < 1000 and population >= 10000
π DESCRIPTION π
so the way that t.vect.observe.strds works is: it observes specific locations in a space time raster dataset over a period of time using vector points. no cap. π«Ά
first input? a vector map layer with vector points. second input? one or several space time raster datasets (STRDS) that should be sampled over time at the vector point positions. the space time raster dataset gets sampled over its whole temporal extent (from start to end, like the entire era, iconic). and you must specify a column name for each input space time raster dataset β one per STRDS, no skipping.
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. so yeah β for each time step in the space time raster dataset a new attribute table is created. the GRASS GIS Temporal Framework allows to time stamp attribute tables that can be linked to a single vector map layer. it's honestly so clever, I'm obsessed π
and here's the tea: 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. every single one. periodt.
psst β use t.vect.db.select to print attribute values of the space time vector dataset to stdout. that's the vibe check on your data π
πΈ 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
t.info precip_stations type=stvds
+-------------------- 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"
|
+----------------------------------------------------------------------------+
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: |
| |
+----------------------------------------------------------------------------+
yes bestie the command in that example says vect= β I'm reporting it exactly as the manual has it, don't come for me π
π SEE ALSO π
t.create, t.info, t.vect.db.select, t.vect.what.strds
π AUTHOR π
SΓΆren Gebbert, ThΓΌnen Institute of Climate-Smart Agriculture
π SOURCE CODE π
Available at: t.vect.observe.strds source code (history)
Accessed: Saturday Jan 17 05:41:54 2026
Main index | Temporal index | Topics index | Keywords index | Graphical index | Full index
Β© 2003-2025 GRASS Development Team, GRASS GIS 8.4.2 Reference Manual
and that's the whole page, bestie π this ran under GRASS 8.4.2, the manpage is t.vect.observe.strds(1), and that "Accessed" stamp is from Saturday Jan 17 05:41:54 2026 β slay, go sample some raster over time, you got this π¦β¨
π¦ where this page comes from
- fedora 44: grass 8.4.2-4.fc44 Β· 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