Hot answers tagged

11

Historical OSM data is available in the OpenStreetMap Full History Dump file. You can dowload it as *.pbf or *.xml data. Extracs of selected countries can be downloaded from http://osm.personalwerk.de/full-history-extracts/ or from http://odbl.poole.ch/extracts/. I recommend you the OSM-history-splitter to generate extracts out of *.osh files and the OSM-...


10

Expression to_datetime("Date_Field") + to_interval('10 hours') will add 10 hours to the "Date_Field". I have not tested fully, but it seems to_interval() accepts month(s) day(s) hour(s) and their combinations such as '1 day 2 hours'.


9

You could have a look at the Targomo API (formerly Route360˚), a pretty simple but powerful JS library which you can use with Leaflet (or even Google maps if you like). It adds travel time polygons to your map for the travel times you require (e.g. 10, 20, 60 minutes) and for the following travel modes: walk, bike, car, transit. There are quite a few ...


8

When remote sensing vegetation, the time of year is very important. In most climates, vegetation has significantly more biomass (i.e., leaves etc.) during the summer, which means that it is easier for the sensor to discern the health of vegetation at that time of year. Two NDVI images of the same location from different times of the year may look different ...


8

It's possible without using a python function, with a little bit of hacks: minute( age( todatetime('2000-01-01 10:18:00'), todatetime(2000-01-01 10:16:30') ) ) will return "1.5". To break it down, "age" returns the difference between two datetimes as an interval type. This needs to be wrapped in the "minute" function to extract the length of this interval ...


8

Try something like: concat(to_string(floor(duration)),':',to_string(round((duration*60) % 60, 0)))


7

Your plan is fine. A traditional way to handing the "end date" is to leave it NULL, so every geometry has a start and end, and those that have been superseded have a non-NULL end point. Here's a very simple temporal model. http://postgis.net/workshops/postgis-intro/history_tracking.html If you're going to be doing a lot of temporal querying, looking into ...


7

The current GeoJSON specification is geojson.org/geojson-spec.html and it defines "positions" as A position is represented by an array of numbers. There must be at least two elements, and may be more. The order of elements must follow x, y, z order (easting, northing, altitude for coordinates in a projected coordinate reference system, or longitude, ...


7

There is some detailed information here, on the ICSM page on datum modernisation. Note importantly the two stage implementation: Stage–1 GDA2020 The GDA2020 datum will result from a readjustment of the entire national geodetic network to a reference epoch of 1 January 2020. This will correct regional decimetre–level biases remaining in GDA94, ...


6

Yes, the CF 1.6 Conventions for NetCDF include the specification of collections of time series and it seems your data is similar to example H.2.1 "Orthogonal multidimensional array representation of time series": If you store your data this way, IDV should be able to recognize this as "point data". Hopefully more applications in the future will take ...


6

Yep, it is totally possible! Here are two examples with the same dataset, one is for changing intensity over time, https://team.cartodb.com/u/andrew/viz/32ff4f28-7e51-11e4-9555-0e853d047bba/public_map The second is more like you request (I think) and shows cumulative amount over time http://team.cartodb.com/u/andrew/viz/a0a551a0-9b41-11e4-856f-...


6

I don't think there is a way to do that for a particular date field, and this link provided by Get Spatial confirms it. However, if you turn on Editor Tracking, it will create fields for: Creation Date Creator Last Edit Date Last Editor You have the option to name these fields to whatever you want. So, you could call the Created Date Field "Date Notified"...


6

I think what you are looking for is a virtual field. It is a field based on an expression that is always evaluated and not stored in memory. To do it you have to open the field calculator check the box Create a virtual field and then add your expression. day(age(now(), "Date")). This field will always be calculated when you see it. Your date must ...


5

You need to edit the properties of yours fields Date and Time in QGIS. Go to the properties of your layer. Select the Fields tab. In the line of your field (date and time), click on Line edit. Select Date/Time. And then you can specify the format of your date or time -> it must be the same as defined in Qt Designer! If the properties are the same in your ...


5

Reproducing the map example you provided is primarily a cartographic effort and requires very little analysis if you have already calculated NDVI. I would use the following workflow to produce the map similar to the one you provided a link to. Collect the NDVI data to use in your analysis. In the example, they use "Summer" 1989 to 2001. In your case, you ...


5

You can try this, http://lib.heron-mc.org/heron/1.0.3/examples/timeslider/index.html This example has an amazing slider, Hope it meets all your requirements. UPDATE : Another Good Example: http://timemap.googlecode.com/svn/tags/2.0.1/examples/kenya.html


5

Thanks for reply. I didn't know this log file. Really a great help! Here is the solution for my problem: http://myserver:8080/geonetwork/srv/eng/csw?SERVICE=CSW&version=2.0.2 &REQUEST=GetRecords&resultType=results &constraintLanguage=CQL_TEXT&constraint_language_version=1.1.0 &constraint=TempExtent_begin%20>=%20'2014-10-12T00:00:00Z' &elementSetName=full&...


5

Wow this is very fun and... extremely hard for me. Assuming "arrival" as your Arrival time field: Hour........... lpad(to_string(floor("arrival")),2,0) Minutes...... lpad(to_string((floor("arrival"*60)%60)),2,0) Seconds..... lpad(to_string(round(("arrival"*3600)%60)),2,0) Wrapping the above into single expression, it ...


5

You can use the following considering you have QGIS 3.14+ from qgis.PyQt import sip canvas = iface.mapCanvas() temporalController = canvas.temporalController() # Cast the QgsTemporalController to QgsTemporalNavigationObject or stucked temporalNavigationObject = sip.cast(temporalController, QgsTemporalNavigationObject) currentFrameNumber = ...


4

The date_trunc works in PostgreSQL: # SELECT date_trunc('year', timestamp '2001-11-16 20:38:40' + interval '2 months'); date_trunc --------------------- 2002-01-01 00:00:00 (1 row) While in SQLite it gives the error you get: > SELECT date_trunc('year', timestamp '2001-11-16 20:38:40' + interval '2 months'); Error: near "'2001-11-16 20:38:40'...


4

In order to show isochrones (Travel Time Map) and isodistances you can try the iso4app service. This service currently is available for over 50 countries: North America, Central America,South America, Europe, Russian Federation (European part), China and Australia. You can use isolines with Leaflet or Google Maps Support for walk, car, bike isolines ...


4

You can try the hour() field calculator function with a nested age() function: hour(age("FIELD1","FIELD2")) That should output the difference in hours. But you might have to re-create your input field as Date type and format them like YYYY-MM-DDTHH:MM:SS if not already. I'm not sure if you can use more nested Conversion functions like tointerval() or ...


4

Yes, the NetCDF CF Metadata Conventions version 1.6 specifies how to store point and station time series data in chapter 9 "Discrete Sampling Geometries". Since your data has the same sample times for all stations, I agree with Rich that you can base your netCDF structure on the example in section H.2.1 "Orthogonal multidimensional array representation of ...


4

In GeoServer you can specify a start and an end date column, see the documentation at http://docs.geoserver.org/latest/en/user/webadmin/data/layers.html#edit-dimensions. All you need is two date columns i.e. two columns with date datatype in your database.


4

basically use TIME=value& at the end of the WMS request. For a range of values you need to use TIME=start/end&. If you look in the GetCapabilities response you will see the values of time that will work. See this tutorial for a brief explanation.


4

First go to your point layer and click the drop down arrow > perform analysis Then go to Use Proximity and Create Drivetime Areas, change the measure to Walking Time Seperate the parameters you need with commas and select overlap to create the rings as in your screenshot. You can then open this feature layer in desktop for further tweeking such as better ...


4

For shapefiles, the time portion is truncated from the datetime value. So you should work inside a geodatabase if you need the time. If you really need to work in a shapefile, I suggest that you try it within a text field


4

If you're using 2.8 or later, you can use the Python function builder. This code will do the calculation. I don't think you need to use Qt objects for this. from qgis.core import * from qgis.gui import * from datetime import datetime import time @qgsfunction(args=2, group='Python') def timedifference(values,feature,parent): ''' call this function ...


4

Shapefiles utilize dBase-III+ date values ('D' type), which are restricted to day resolution. If you need second resolution, you'll need to use a personal, file, or enterprise geodatabase. It would probably be best to round the fractional seconds to the nearest second, since Desktop's time structure (struct tm) doesn't support subsecond precision at this ...


4

In my opinion the "right" way would be using properties unless you consider your timestamps to be coordinates in time-space. That means that instead of raw geometries, you would use features, actual proper objects that have geometries and optional attribute (the properties). Stuffing attributes into the coordinates array just invites problems with all ...


Only top voted, non community-wiki answers of a minimum length are eligible