Learning how to build smart web-GIS applications with Python & Django

GEO University
GEO University Learning Content
3 min readMar 8, 2019

Looking at the image above you can see a web-GIS application based on Python and Django. What is does? It visualizes in a map with beautiful graphs dam levels.

Key purpose of such web applications is to present to its users the data available both on a map and on charts.

In order to do this, of course we need data, like statistics or measurements for each location, but we also need a software to “show” us these data. This includes technologies like Python, Django, PostgreSQL/PostGIS… just to mention a few.

One of our Instructors, Edwin Bomela, here in GEO University has developed two online courses to do exactly this.

  1. Smart Maps in Python Tutorial
  2. Web Scraping and Mapping Dam Levels in Python

In the first tutorial you will be building a python GIS application from scratch using a variety of open source technologies. The purpose of this tutorial and many more to follow, is to take geospatial analytics and convert it into a functional application. We will be powering our application with a PostgreSQL and PostGIS database. In the front-end we’ll use Bootstrap, JavaScript and Ajax. On the server side we’ll be using Python 3 Django combined with use of scientific libraries like pandas, for our data transformation and conversion operations. The operating system that we will be working on is Ubuntu Linux 16.04.

Example of the web Graphical Interface you will be creating

In the second course, you will be exposed to multiple technologies, and topics such as: Web Scraping ETL, Python Django Programming, Web Mapping, and Data Visualization. You will combine each of these topics and technologies to create an end-to-end GIS web application.

Example of the web-GIS application you will be develop for the dam levels

What will you learn from these courses?

  1. How to create smart maps using python
  2. Build web maps using Django and Python
  3. Adding a Spatial Database to our Django Backend
  4. Creating a GeoDjango Application Skeleton
  5. Installing and Configuring Atom IDE
  6. Installing PostgreSQL and PostGIS
  7. Installing Python Django in a Virtual Environment
  8. Registering our model in the admin file
  9. You will learn how to apply web scraping to collect dam level data from a website.
  10. You will then build a model, that you will use to plot the dam level data on a map using leaflet.
  11. You will learn how to use the Django Template Engine instead of Ajax, to pass data from the back-end to the front-end.
  12. You will learn how to build a spatial database using PostgreSQL.
  13. You will also learn how to build a small dashboard that floats over your map, which will contain graphs that will visualize your model.

--

--