import geopandas as gpd
import matplotlib.pyplot as plt
from pyproj import CRS
Tissot Circles in Different Coordinate Reference Systems
In the post, I create several maps using different coordinate reference systems to demonstrate the distortion introduced by various types of projections. Projected coordinate systems are classified into equal-area, conformal, and equidistant or compromise projections, based on which characteristics they preserve: area, shape, or distance. There is no perfect projection; we always have to decide which features we want to preserve on our maps.
Load the data used to create the maps. The Admin.geojson
file contains the world administrative boundaries. The Points_Buffer.geojson
file contains the Tissot circles, each with a geodesic radius of 600 kilometres.
= "https://github.com/zehuiyin/tissot_circles/raw/refs/heads/main/"
url = gpd.read_file(url + "Admin.geojson")
admin = gpd.read_file(url + "Points_Buffer.geojson") tissot
Create a function to reproject both datasets and map the Tissot circles on top of the administrative boundaries.
def tissot_map(epsg):
= plt.subplots(dpi=300)
fig, ax \
admin.to_crs(epsg) =ax,
.plot(ax="grey",
color=5)
zorder\
tissot.to_crs(epsg) =ax,
.plot(ax="#1f78b4",
color=10)
zorder
ax.set_title(CRS.from_epsg(epsg).name)"equal") ax.set_aspect(
Geographic Coordinate System (WGS 1984)
Firstly, this map shows the World Geodetic System 1984, a geographic coordinate system that is unprojected. The map units are in degrees instead of metres.
4326) tissot_map(
Projected Coordinate System
World Mercator
Then, this map shows the World Mercator projection, a conformal projection. As a result, the circle shapes are preserved in this map.
3395) tissot_map(
World Equidistant Cylindrical
Thirdly, this map shows the World Equidistant Cylindrical projection. As the name suggests, it preserves distances in the map.
4087) tissot_map(
Equal Area Projection
This map uses an equal area projection, centred around Europe and Africa, which preserves area size.
8857) tissot_map(
Plate Carrée Projection
This map uses the Plate Carrée projection, a compromise projection that balances distortions in different characteristics rather than preserving any single feature.
32662) tissot_map(