GIS

Setting up DuckDB for Geospatial Analysis

Overview DuckDB is a versatile analytical database that excels in handling large datasets efficiently. From a geospatial (GIS) and Parquet perspective, DuckDB stands out for its support of spatial data and its ability to seamlessly integrate with Parquet, a columnar storage file format. In this introduction, we’ll explore DuckDB’s features and capabilities in the context …

Setting up DuckDB for Geospatial Analysis Read More »

Integrating OpenLayers Map with Vue.js: Creating Vector Tiles, Adding VectorTile Layers, and Implementing Dynamic Styling – Part 6

In this comprehensive tutorial series, you’ll learn how to integrate OpenLayers maps into your Vue.js web application, enabling you to create interactive maps with vector tiles, apply dynamic styling, and enhance the user experience. The tutorial is divided into multiple steps, each building upon the previous one. This blog post is the 6th part in …

Integrating OpenLayers Map with Vue.js: Creating Vector Tiles, Adding VectorTile Layers, and Implementing Dynamic Styling – Part 6 Read More »

Spatial Analysis of Population Shifts: A Raster-based Exploration

In this tutorial, we’ll walk through a geospatial analysis of population shifts using raster data. We’ll be comparing census data from two years, 2006 and 2021, to identify significant changes in population. Why Rasterize the 1KM Grid Census Data? When working with geospatial data, especially for analysis over large areas or with many polygons, operations …

Spatial Analysis of Population Shifts: A Raster-based Exploration Read More »

Integrating Cesium Map with VueJS: Generating and rendering 3D terrain in Cesium – Part 2

In the realm of geospatial visualization, CesiumJS stands out as a leading library, offering powerful tools for 3D mapping and terrain rendering. Its capabilities are further enhanced when combined with modern frontend frameworks like VueJS, which provides a reactive and component-based architecture. This synergy allows developers to create immersive and interactive 3D map applications with …

Integrating Cesium Map with VueJS: Generating and rendering 3D terrain in Cesium – Part 2 Read More »

Integrating Cesium Map with VueJS: Rendering 3D Map – Part 1

CesiumJS is a robust library for creating 3D globes and maps in a web browser, while Vue.js is a flexible JavaScript framework for building user interfaces. By integrating CesiumJS with Vue.js, developers can leverage the 3D capabilities of CesiumJS and the modular structure of Vue.js to build interactive geospatial applications. To get full source code …

Integrating Cesium Map with VueJS: Rendering 3D Map – Part 1 Read More »

Interpolating bathymetry point dataset using python

Bathymetry point data refers to a dataset containing discrete data points that represent depth measurements at specific locations in a water body, such as oceans, seas, lakes, or rivers. These points are collected during bathymetric surveys using various instruments, such as echo sounders or sonar systems. Each data point typically consists of three key components: …

Interpolating bathymetry point dataset using python Read More »

Serving Dynamic Vector Tiles from a PostGIS Database to OpenLayers Map Using FastAPI

Introduction FastAPI is a powerful and efficient web framework for creating APIs in Python that has gained popularity due to its speed and simplicity. This blog will delve into the specifics of how FastAPI can serve vector tiles from a PostGIS database. Our journey will involve SQL query templates, FastAPI endpoints, and a PostGIS database …

Serving Dynamic Vector Tiles from a PostGIS Database to OpenLayers Map Using FastAPI Read More »

Generating Vector Tiles with PostGIS and Python for OpenLayers Map Rendering

What are Vector Tiles? Vector tiles are a way of storing and serving geographic data in a compact and efficient format. Unlike traditional raster tiles, which are pre-rendered images, vector tiles contain vector data that can be rendered dynamically on the client side. This means that they can be styled and labeled in real-time, allowing …

Generating Vector Tiles with PostGIS and Python for OpenLayers Map Rendering Read More »

Integrating OpenLayers Map with VueJS: Recreating the project with Vite, Pinia and TypeScript-Part 5

This tutorial will guide you through the process of recreating an existing project that integrates OpenLayers Map with VueJS, using Vite, Pinia, and TypeScript. The original project used Vuex, which has since been deprecated, so we will be updating it with the newer and more efficient state management library, Pinia. We will start by setting …

Integrating OpenLayers Map with VueJS: Recreating the project with Vite, Pinia and TypeScript-Part 5 Read More »

Building a Custom Geocoding Service with Autocomplete using Python, PostGIS, and OpenLayers for Address Lookup

This tutorial will guide you through the process of building a custom geocoding API utilizing Python and PostGIS, enabling address searches on an OpenLayers map. In addition to implementing autocomplete functionality for a more user-friendly experience, we will also demonstrate how to zoom in to the selected address upon click. We will go through following …

Building a Custom Geocoding Service with Autocomplete using Python, PostGIS, and OpenLayers for Address Lookup Read More »