Skip to content
Advertisement

Geopandas: different .sjoin() results with different projections systems

I tried to run a spatial join between a list of assets and a river basin dataset that you can find at the link below https://datasets.wri.org/dataset/aqueduct-global-flood-risk-maps?msclkid=630fc948b63611ec9931936b22cf4990

The first approach was a join on an ESPG 4326 projection setting and it works fine.

JavaScript

The two assets have both a join.

In a second approach, I try to create a 500 mt buffer around my assets using a meter-based projection system (3006) and proceed to merge them…but it returns no result?

JavaScript

it returns no joins.

What am I missing here? Why would be the results different?

Advertisement

Answer

  • have coded up data sourcing of shape files
  • take a look at documentation https://epsg.io/3006 this is for Sweden. Hence locations in Borneo and Australia are going to start to give rounding errors when expressed in meters from Sweden
  • have taken approach of work out UTM CRS of each point, buffer it, then convert back to epsg:4386
  • with buffered point geometry can now spatial join as an inappropriate CRS for global geometry has not been used
JavaScript

data sourcing

JavaScript
User contributions licensed under: CC BY-SA
6 People found this is helpful
Advertisement