Getting started with pygeoapi processes
Free and Open Source GIS Ramblings
by underdark
1w ago
Today’s post is a quick introduction to pygeoapi, a Python server implementation of the OGC API suite of standards. OGC API provides many different standards but I’m particularly interested in OGC API – Processes which standardizes geospatial data processing functionality. pygeoapi implements this standard by providing a plugin architecture, thereby allowing developers to implement custom processing workflows in Python. I’ll provide instructions for setting up and running pygeoapi on Windows using Powershell. The official docs show how to do this on Linux systems. The pygeoapi homepa ..read more
Visit website
Trajectools 2.0 released ?
Free and Open Source GIS Ramblings
by underdark
1M ago
It’s my pleasure to share with you that Trajectools 2.0 just landed in the official QGIS Plugin Repository. This is the first version without the “experimental” flag. If you look at the plugin release history, you will see that the previous release was from 2020. That’s quite a while ago and a lot has happened since, including the development of MovingPandas. Let’s have a look what’s new! The old “Trajectories from point layer”, “Add heading to points”, and “Add speed (m/s) to points” algorithms have been superseded by the new “Create trajectories” algorithm which automatically computes speed ..read more
Visit website
Trajectools update: stop detection & trajectory styling
Free and Open Source GIS Ramblings
by underdark
2M ago
The Trajectools toolbox has continued growing: I’m continuously testing the algorithms integrated so far to see if they work as GIS users would expect and can to ensure that they can be integrated in Processing model seamlessly. Because naming things is tricky, I’m currently struggling with how to best group the toolbox algorithms into meaningful categories. I looked into the categories mentioned in OGC Moving Features Access but honestly found them kind of lacking: Andrienko et al.’s book “Visual Analytics of Movement” comes closer to what I’m looking for: … but I’m not convinced yet. So t ..read more
Visit website
Offline Vector Tile Package .vtpk in QGIS
Free and Open Source GIS Ramblings
by underdark
3M ago
Starting from 3.26, QGIS now supports .vtpk (Vector Tile Package) files out of the box! From the changelog: ESRI vector tile packages (VTPK files) can now be opened directly as vector tile layers via drag and drop, including support for style translation. This is great news, particularly for users from Austria, since this makes it possible to use the open government basemap.at vector tiles directly, without any fuss: 1. Download the 2GB offline vector basemap from https://www.data.gv.at/katalog/de/dataset/basemap-at-verwaltungsgrundkarte-vektor-offline-osterreich 2. Add the .vtpk as a laye ..read more
Visit website
Hi ‘Geocomputation with Python’
Free and Open Source GIS Ramblings
by underdark
3M ago
Today, I want to point out a blog post over at https://geocompx.org/post/2023/geocompy-bp1/ In this post, Jakub Nowosad introduces our book “Geocomputation with Python”, also known as geocompy. It is an open-source book on geographic data analysis with Python, written by Michael Dorman, Jakub Nowosad, Robin Lovelace, and me with contributions from others. You can find it online at https://py.geocompx.org ..read more
Visit website
Mapping relationships between Neo4j spatial nodes with GeoPandas
Free and Open Source GIS Ramblings
by underdark
3M ago
Previously, we mapped neo4j spatial nodes. This time, we want to take it one step further and map relationships. A prime example, are the relationships between GTFS StopTime and Trip nodes. For example, this is the Cypher query to get all StopTime nodes of Trip 17: MATCH (t:Trip {id: "17"}) <-[:BELONGS_TO]- (st:StopTime) RETURN st To get the stop locations, we also need to get the stop nodes: MATCH (t:Trip {id: "17"}) <-[:BELONGS_TO]- (st:StopTime) -[:STOPS_AT]-> (s:Stop) RETURN st ,s Adapting our code from the previous post, we can plot the ..read more
Visit website
Mapping Neo4j spatial nodes with GeoPandas
Free and Open Source GIS Ramblings
by underdark
4M ago
In the recent post Setting up a graph db using GTFS data & Neo4J, we noted that — unfortunately — Neomap is not an option to visualize spatial nodes anymore. GeoPandas to the rescue! But first we need the neo4j Python driver: pip install neo4j Then we can connect to our database. The default user name is neo4j and you get to pick the password when creating the database: from neo4j import GraphDatabase URI = "neo4j://localhost" AUTH = ("neo4j", "password") with GraphDatabase.driver(URI, auth=AUTH) as driver: driver.verify_connectivity() Once we have confirmed that the connection ..read more
Visit website
Analyzing mobility hotspots with MovingPandas & CARTO
Free and Open Source GIS Ramblings
by underdark
4M ago
Today, I want to point out a blog post over at https://carto.com/blog/analyzing-mobility-hotspots-with-movingpandas written together with my fellow co-authors and EMERALDS project team members Argyrios Kyrgiazos and Helen McKenzie. In this blog post, we walk you through a trajectory hotspot analysis using open taxi trajectory data from Kaggle, combining data preparation with MovingPandas (including the new OutlierCleaner illustrated above) and spatiotemporal hotspot analysis from Carto ..read more
Visit website
Setting up a graph db using GTFS data & Neo4J
Free and Open Source GIS Ramblings
by underdark
4M ago
In a recent post, we looked into a graph-based model for maritime mobility data and how it may be represented in Neo4J. Today, I want to look into another type of mobility data: public transport schedules in GTFS format. In this post, I’ll be using the public GTFS data for Riga since Riga is one of the demo sites for our current EMERALDS research project. The workflow is heavily inspired by Bert Radke‘s post “Loading the UK GTFS data feed” from 2021 and his import Cypher script which I used as a template, adjusted to the requirements of the Riga dataset, and updated to recent Neo4J changes. He ..read more
Visit website
Adding basemaps to PyQGIS maps
Free and Open Source GIS Ramblings
by underdark
4M ago
In the previous post, we investigated how to bring QGIS maps into Jupyter notebooks. Today, we’ll take the next step and add basemaps to our maps. This is trickier than I would have expected. In particular, I was fighting with “invalid” OSM tile layers until I realized that my QGIS application instance somehow lacked the “WMS” provider. In addition, getting basemaps to work also means that we have to take care of layer and project CRSes and on-the-fly reprojections. So let’s get to work: from IPython.display import Image from PyQt5.QtGui import QColor from PyQt5.QtWidgets import QApplication ..read more
Visit website

Follow Free and Open Source GIS Ramblings on FeedSpot

Continue with Google
Continue with Apple
OR