Scroll to navigation

t.rast.series(1grass) GRASS GIS User's Manual t.rast.series(1grass)


t.rast.series - Performs different aggregation algorithms from r.series on all or a subset of raster maps in a space time raster dataset.


temporal, aggregation, series, raster, time


t.rast.series --help
t.rast.series [-tn] input=name method=string[,string,...] [quantile=float[,float,...]] [order=string[,string,...]] [where=sql_query] output=name[,name,...] [--overwrite] [--help] [--verbose] [--quiet] [--ui]


Do not assign the space time raster dataset start and end time to the output map

Propagate NULLs

Allow output files to overwrite existing files

Print usage summary

Verbose module output

Quiet module output

Force launching GUI dialog


Name of the input space time raster dataset

Aggregate operation to be performed on the raster maps
Options: average, count, median, mode, minimum, min_raster, maximum, max_raster, stddev, range, sum, variance, diversity, slope, offset, detcoeff, quart1, quart3, perc90, quantile, skewness, kurtosis
Default: average

Quantile to calculate for method=quantile
Options: 0.0-1.0

Sort the maps by category
Options: id, name, creator, mapset, creation_time, modification_time, start_time, end_time, north, south, west, east, min, max
Default: start_time

WHERE conditions of SQL statement without ’where’ keyword used in the temporal GIS framework
Example: start_time > ’2001-01-01 12:30:00’

Name for output raster map(s)


The input of this module is a single space time raster dataset, the output is a single raster map layer. A subset of the input space time raster dataset can be selected using the where option. The sorting of the raster map layer can be set using the order option. Be aware that the order of the maps can significantly influence the result of the aggregation (e.g.: slope). By default the maps are ordered by start_time.

t.rast.series is a simple wrapper for the raster module r.series. It supports a subset of the aggregation methods of r.series.


Estimate the average temperature for the whole time series

Here the entire stack of input maps is considered:

t.rast.series input=tempmean_monthly output=tempmean_average method=average

Estimate the average temperature for a subset of the time series

Here the stack of input maps is limited to a certain period of time:

t.rast.series input=tempmean_daily output=tempmean_season method=average \

where="start_time >= ’2012-06’ and start_time <= ’2012-08’"

Climatology: single month in a multi-annual time series

By considering only a single month in a multi-annual time series the so-called climatology can be computed. Estimate average temperature for all January maps in the time series:

t.rast.series input=tempmean_monthly \

method=average output=tempmean_january \
where="strftime(’%m’, start_time)=’01’" # equivalently, we can use t.rast.series input=tempmean_monthly \
output=tempmean_january method=average \
where="start_time = datetime(start_time, ’start of year’, ’0 month’)" # if we want also February and March averages t.rast.series input=tempmean_monthly \
output=tempmean_february method=average \
where="start_time = datetime(start_time, ’start of year’, ’1 month’)" t.rast.series input=tempmean_monthly \
output=tempmean_march method=average \
where="start_time = datetime(start_time, ’start of year’, ’2 month’)"

Generalizing a bit, we can estimate monthly climatologies for all months by means of different methods

for i in `seq -w 1 12` ; do

for m in average stddev minimum maximum ; do
t.rast.series input=tempmean_monthly method=${m} output=tempmean_${m}_${i} \
where="strftime(’%m’, start_time)=’${i}’"
done done


r.series, t.create,

Temporal data processing Wiki


Sören Gebbert, Thünen Institute of Climate-Smart Agriculture


Available at: t.rast.series source code (history)

Main index | Temporal index | Topics index | Keywords index | Graphical index | Full index

© 2003-2020 GRASS Development Team, GRASS GIS 7.8.5 Reference Manual

GRASS 7.8.5