Home Machine Learning Why Are All Maps Inaccurate?. Understanding map projections, and why… | by Jake Teo | Dec, 2023

Why Are All Maps Inaccurate?. Understanding map projections, and why… | by Jake Teo | Dec, 2023

0
Why Are All Maps Inaccurate?. Understanding map projections, and why… | by Jake Teo | Dec, 2023

[ad_1]

Understanding map projections, and why they’re utilized in among the hottest maps in the present day

Photograph by Kyle Glenn on Unsplash

Most of us know the Earth is spherical, or extra precisely an ellipsoid. The truth that we’ve to signify a curved three-dimensional floor to a 2-dimensional flat piece of paper or display signifies that some distortions are concerned. This methodology of “projecting” the Earth’s floor to a 2D picture known as a map projection.

There are lots of of map projections, and every of them minimises distortion within the form, distance, space and route in numerous levels. Nevertheless, no map projection can get rid of all of them, therefore understanding the professionals and cons of every projection is crucial to find out what to make use of to your challenge.

Orthographic Projection
Mercator Projection
Transverse Mercator Projection
Lambert Conformal Conic Projection
Robinson Projection
Abstract

To visualise the varied projections, we will use the Python libraries matplotlib and cartopy.

pip set up matplotlib cartopy

The code supply for many of the world maps created on this article is offered beneath.

import matplotlib.pyplot as plt
import cartopy.crs as ccrs
import cartopy.characteristic as characteristic

# repair maplotlib params
plt.rcParams[‘figure.dpi’] = 175

# projections & borders
CRSs = [ccrs.Orthographic(),
ccrs.Orthographic(central_longitude=0, central_latitude=-90),
ccrs.Mercator(),
ccrs.UTM(zone=29),
ccrs.Robinson(),
ccrs.LambertConformal()]

borders = [(0, 1, 1, 0.05),
(0, 1, 1, 0.05),
(0, 1, 1, 0.05),
(0, 1, 1, 0.05),
(0.05, 1, 1, 0),
(0, 1, 1, 0)]

names = ["ortho", "ortho_southpole", "merca",
"utm", "robin", "lambertc"]

dir = "/Customers/jake/Desktop/gis"

for crs, br, title in zip(CRSs, borders, names):
fig, ax = plt.subplots(subplot_kw={‘projection’: crs})
projection_name = str(crs).cut up(" ")[0]

# Draw nations and coastlines
ax.coastlines(linewidth=0.5)…

[ad_2]