Python HTML Other
Latest commit 3b2e6e4 Sep 25, 2016 @anitagraser committed on GitHub Update to 2.3.1
Permalink
Failed to load latest commit information.
animation Renamed logging to tmlogging Jul 1, 2016
docs initial copy from http://www.geofrogger.net/svn/trunk/ Dec 27, 2011
i18n Fix some translations Sep 14, 2016
images adding play/pause toggle (temporary image) Jun 28, 2016
interpolation Renamed logging to tmlogging Jul 1, 2016
raster Merge pull request #181 from anitagraser/logging-renaming Jul 1, 2016
scripts Updating the translation files @QGIS conference May 17, 2015
test Not skipping test Jul 4, 2016
testdata Improved test coverage to 72% Jun 30, 2015
ui Adds some more options for writing the timestamps. Those are not yet … Mar 11, 2016
.coveragerc Added config to exclude test files themselves from coverage calculations Jan 20, 2015
.gitignore #112 export animation directly by calling imagemagick via system call Jul 7, 2015
.travis.yml Travisfix (#190) Sep 2, 2016
CONTRIBUTING.md Introduced idea of normal and archaelogical mode May 15, 2015
GITHUB.md Added instructions for using TimeManager from github Mar 25, 2015
README.md #4 Complete fix Mar 27, 2015
VideoTutorial.md Documentation update + small fixes Jan 27, 2015
__init__.py In progress pep8 Oct 4, 2015
addLayer.ui minor label changes for consistency Apr 9, 2016
addRasterLayer.ui minor label changes for consistency Apr 9, 2016
animate.ui #112: Some work to export mp4 directly using ffmpeg (not very configu… Mar 14, 2016
arch.ui make the arch-dialog resizable and more readable (at least on my mach… Jun 17, 2016
bcdate_util.py Renamed logging to tmlogging Jul 1, 2016
conf.py #Fixes 157: Now last animation path is saved in QSettings May 18, 2016
dockwidget2.ui Added archaelogy mode toggle button to UI May 17, 2015
generate_label_options_ui_code.sh Adds some more options for writing the timestamps. Those are not yet … Mar 11, 2016
help.htm In progress pep8 Oct 4, 2015
help.ui Made nicer error message wrt format errors, made hacky fix for delimi… Jun 6, 2015
icon.png initial copy from http://www.geofrogger.net/svn/trunk/ Dec 27, 2011
index.html In progress pep8 Oct 4, 2015
label_options.ui Adds some more options for writing the timestamps. Those are not yet … Mar 11, 2016
layer_settings.py In progress pep8 Oct 4, 2015
metadata.txt Update to 2.3.1 Sep 25, 2016
options.ui Made ui for feature accumulation Jun 22, 2015
os_util.py In progress pep8 Oct 4, 2015
params.json Created gh-pages branch via GitHub Apr 3, 2012
pep8.sh Added pep8 linting to the CI process Oct 4, 2015
qgis_utils.py Renamed logging to tmlogging Jul 1, 2016
query_builder.py In progress pep8 Oct 4, 2015
rasterlayerdialog.py Renamed logging to tmlogging Jul 1, 2016
resources.py adding play/pause toggle (temporary image) Jun 28, 2016
resources.qrc adding play/pause toggle (temporary image) Jun 28, 2016
run_tests.sh Using pep8 1.4.6 Oct 5, 2015
time_util.py Merge branch 'master' of https://github.com/anitagraser/TimeManager Apr 7, 2016
timelayer.py In progress pep8 Oct 4, 2015
timelayerfactory.py In progress pep8 Oct 4, 2015
timelayermanager.py Renamed logging to tmlogging Jul 1, 2016
timemanager.pro Added archaelogy mode toggle button to UI May 17, 2015
timemanager.py Renamed logging to tmlogging Jul 1, 2016
timemanagercontrol.py Temporary fix for #198 Sep 23, 2016
timemanagerguicontrol.py adding play/pause toggle (temporary image) Jun 28, 2016
timemanagerprojecthandler.py #Fixes 157: Now last animation path is saved in QSettings May 18, 2016
timerasterlayer.py In progress pep8 Oct 4, 2015
timevectorinterpolatedlayer.py Renamed logging to tmlogging Jul 1, 2016
timevectorlayer.py Renamed logging to tmlogging Jul 1, 2016
tmlogging.py Renamed logging to tmlogging Jul 1, 2016
userguide.htm In progress pep8 Oct 4, 2015
vectorlayerdialog.py Renamed logging to tmlogging Jul 1, 2016

README.md

Welcome to TimeManager!

A plugin for QGIS by Anita Graser and Karolina Alexiou (aka carolinux)

Latest news will be published on Anita's blog: http://anitagraser.com/tag/time-manager/

What is the goal

The aim of '''Time Manager plugin for QGIS''' is to provide comfortable browsing through temporal geodata. A dock widget provides a time slider and a configuration dialog for your layers to manage.

Newest features

As of version 1.6.0 TimeManager provides support for linear interpolation between point geometries. Please try it out and give feedback.

What Time Manager currently does

Time Manager filters your datasets and displays only features with timestamps in the user specified time frame. Timestamps have to be in one of the following formats:

  • Integer timestamp in seconds after or before the epoch (1970-1-1)
  • %Y-%m-%d %H:%M:%S.%f
  • %Y-%m-%d %H:%M:%S
  • %Y-%m-%d %H:%M
  • %Y-%m-%dT%H:%M:%S
  • %Y-%m-%d
  • %Y/%m/%d %H:%M:%S.%f
  • %Y/%m/%d %H:%M:%S
  • %Y/%m/%d %H:%M
  • %Y/%m/%d
  • %H:%M:%S
  • %H:%M:%S.%f
  • %Y.%m.%d %H:%M:%S.%f
  • %Y.%m.%d %H:%M:%S
  • %Y.%m.%d %H:%M
  • %Y.%m.%d

Other formats can be added by appending to the YMD_SUPPORTED_FORMATS list in time_util.py a format that puts the day, the month and the year in this order. Variants that put the month or date first will be then generated automatically. We currently do not support formats that would put the minutes or seconds before the hour. Please note that the %f directive is not supported in all operating systems, because of underlying library limitations.

Start and end time

Users of the plugin can define a start and (optionally) an end time field that describes the geometries of the layer. If only start time is defined, the plugin will select only the features that have a timestamp within the current time interval (current time until current time + time step). If an end time field is defined, then the features whose [startTime-endTime] period overlaps with the [current time, current time+time step] interval are shown. Intuitively, if we have a dataset of buildings and the dates they were built (startTime) and demolished (endTime), with TimeManager we are able to show the state of the village at any point in time. If you want to have a kind of cumulative animation where the shown points do not disappear, an often used trick is to create an artificial endTime field which is sufficiently far in the future.

Shortcuts

Use Ctrl+Space (or Command+Space) if you are using a Mac to focus on the time slider. The left and right arrows can then move the slider.

Supported Layer Types

TimeManager has been tested with PostgreSQL layers, Spatialite layers, delimited text layers, and .shp shapefiles. If you find that a layer of the types mentioned above doesn't behave correctly, please file a bug. If you want us to support new formats, file a feature request.

The biggest tested dataset was a Spatialite table with indexed timestamps containing approximately 400,000 points, covering a time span of 24 hours. Stepping through the data for example in 1-hour-sized steps works without problems.

Animation

Time Manager supports exporting image series based on the defined animation settings. Our goal for future versions is to include a tool that creates actual animations from these image series. Until then, external programs can be used for this last step. See VideoTutorial.md for instructions on how to create a video from the images.

Examples

IMAGE ALT TEXT HERE

IMAGE ALT TEXT HERE

Limitations

The plug-in uses Python's datetime module and QDateTime for calculations. It is therefore limited to these modules' functionality. This enfolds (not exhaustive):

  • Dates must be according to the formats mentioned above
  • Dates must be according to the Gregorian calendar
  • We fully support years from 100 AD to 8000 in the future
  • Time step can be as small as one second (smaller timesteps not fully supported yet). Millisecond steps work well, but to avoid problems your dataset should have a timeformat that itself includes milliseconds, even if that means adding a trailing .0 to your time stamps. Microseconds also work, but QDateTime limitations prevent it from displaying correctly always.

We currently don't support:

  • Dates with time zone notion
  • Shapefiles can't be edited directly, while time-managed. This is an OGR limitation. It also exists for any other query you set: You simply can't edit a shapefile whilst a query is set.

For other known issues check https://github.com/anitagraser/TimeManager/issues?direction=desc&sort=updated&state=open

License

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Download

Time Manager is available through QGIS Plugin Repository http://plugins.qgis.org/plugins/timemanager/

Dependencies

Time Manager 1.0 reqires QGIS 2.0 with Python 2.7.

Other plugin dependencies: Python module dateutil (included e.g. in matplotlib available in OSGeo4W)

If you are running an older version of QGIS, Time Manager versions <= 0.7 require QGIS 1.7 or 1.8 with Python 2.7.