Real Python Podcast Episode #143 Title Artwork

Episode 143: Create Interactive Maps & Geospatial Data Visualizations With Python

The Real Python Podcast

Feb 03, 2023 1h 2m

Would you like to quickly add data to a map with Python? Have you wanted to create beautiful interactive maps and export them as a stand-alone static web page? This week on the show, Christopher Trudeau is here, bringing another batch of PyCoder’s Weekly articles and projects.

Episode Sponsor:

We share a recent Real Python tutorial about using Python Folium to create geospatial data visualizations. Folium harnesses the power of the JavaScript library Leaflet. The project shares how to combine this graphical power with Python’s data-wrangling strength.

Christopher shares a recent Python Enhancement Proposal (PEP) about the Global Interpreter Lock (GIL) in CPython. The PEP proposes a change to the build process that implements a flag for optionally building a GIL-less interpreter.

We share several other articles and projects from the Python community, including a news update, a YAML document from hell, a set of logging practices to follow, a discussion about the discourse surrounding the recent Python packaging user survey, a modern Python UI library based on Tkinter, and a lightweight tool kit for bounding boxes.


  • 00:00:00 – Introduction
  • 00:02:33 – Bleach 6.0.0 release and deprecation
  • 00:05:03 – Python Folium: Create Web Maps From Your Data
  • 00:10:37 – PEP 703: Making the GIL Optional in CPython
  • 00:15:36 – Sponsor: Influxdata
  • 00:16:24 – The YAML Document From Hell
  • 00:27:53 – Logging Practices I Follow
  • 00:32:08 – How to improve Python packaging
  • 00:36:55 – Video Course Spotlight
  • 00:38:25 – Thoughts on the Python packaging ecosystem
  • 00:58:16 – CustomTkinter: Python UI library Based on Tkinter
  • 01:00:16 – pybboxes: Lightweight Tool Kit for Bounding Boxes
  • 01:01:36 – Thanks and goodbye


Show Links:

  • Python Folium: Create Web Maps From Your Data – You’ll learn how to create web maps from data using Folium. The package combines Python’s data-wrangling strengths with the data-visualization power of the JavaScript library Leaflet. In this tutorial, you’ll create and style a choropleth world map that shows the ecological footprint per country.
  • PEP 703: Making the GIL Optional in CPython – This PEP proposes changes to the CPython build process that would allow you to build a GIL-less interpreter. This kind of interpreter would not be ABI compatible with the GIL-based one, and the programmer would become responsible for some locking situations in C-extensions. If implemented, this would lead the way to being able to operate without the GIL in cases where backward-compatibility issues aren’t important.
  • The yaml Document From Hell – As a data format, YAML is extremely complicated and it has many footguns. In this post, Ruud explains some of those pitfalls by means of an example and suggests a few simpler and safer YAML alternatives.
  • Logging Practices I Follow – “No matter what kind of software you’re developing, you most definitely leverage logging to some extent, probably every single day.” This article outlines good cross-language logging practices, making it easier to find bugs and understand what has happened in your software.



Additional Links: