As an Easter present for you all, I’ve got a new web app you can play with. It lets you search for UK place names – things like ‘ends with burgh’ or ‘starts with great’ or ‘contains sea’ – and then plot them on an interactive map. Once you’ve done that, you can even share […]
This is only about 3 years late – but I gave a talk at FOSS4G 2021 on geospatial PDFs. The full title was: From static PDFs to interactive, geospatial PDFs, or, ‘I never knew PDFs could do that!’ The video is below: In the talk I cover what a geospatial PDF is, how to export […]
Here’s a bit of SQL I wrote recently that had an error in it which I struggled to find. The error I got was ERROR: invalid reference to FROM-clause entry for table "roads" and I did some Googling but nothing really seemed to make sense as a cause of this error. My SQL looked like […]
Summary: It might be because there is an exception raised when importing your function_app.py – for example, caused by one of your import statements raising an exception, or a parsing error caused by a syntax error. I was deploying a FastAPI app to Azure Functions recently. Azure Functions is the equivalent of AWS Lambda – […]
Summary: If appending to a PostGIS table with GDAL/OGR is taking a long time, try setting the PG_USE_COPY config option to YES (eg. adding –config PG_USE_COPY YES to your command line). This should speed it up, but beware that if there are concurrent writes to your table at the same time as OGR is accessing […]
I ran into a situation recently where I needed to create a Windows 10 bootable USB stick. I could easily download a Windows 10 ISO file, but I knew that it needed some ‘special magic’ to write it to a USB stick that would boot properly. I tried various solutions (including windiskwriter) but none of […]
I use GeoPandas for a lot of my vector GIS data manipulation in Python. I had a situation the other day where I ended up with duplicates of some geometries in my GeoDataFrame, and I wanted to remove them. The simple way to do this is to use the underlying pandas method drop_duplicates on the […]
Summary: The QGIS Reloader plugin will give you a new QGIS command to reload a layer, very useful when you’re updating a layer in another program and want to refresh QGIS’s view of it. I use QGIS for almost all of my interactive GIS needs. Often I’ll be writing some code in Python that creates […]
Note: This blog post has been updated with a new command for creating an osx-64 environment, after I was contacted by someone from Anaconda telling me a newer, easier way to do this I came across some conda packages that didn’t work properly on my M1 Mac (Apple Silicon – ARM processor) the other day. […]
Just a quick one today to document the solution to a problem I ran into earlier today. I was using Microsoft Planetary Computer to access some Landsat satellite data, and I wanted to run it through the Segment Anything model from Meta, to segment out agricultural fields from the image. I tried to do this […]