New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
'GIS-like' operations #38
Comments
This would be powerful. I might call the parameter something other than |
@kjordahl yes and no: The standard GIS 'layer-style' way of working is based on something like this:
which is equivalent to using
Having said all that, since we aren't necessarily working in the realm of layers with GeoPandas, perhaps we should drop this conceptual model and adopt an API that is equivalent to a |
If we decide which way to go, I'll try to submit a pull request for some of this over the weekend. |
@cfarmer Do the spatial join and overlay functionality cover everything in this issue? Or are there additional "GIS-like" operations/concepts that we should look at? |
Closing for now. If something's missing from sjoin and overlay, let's bring up a new issue. |
Currently, GeoPandas has several 'overlay' operations (such as
intersect
,difference
,union
, etc), which in their current implementation, perform one-to-one spatial overlays on the aligned GeoSeries. While this is useful (particularly if the Indexes of the two GeoSeries' have some useful meaning), many GIS users may find this behavior slightly confusing. Instead, a user may expect to perform a one-to-many overlay comparison between the calling GeoSeries and the input GeoSeries (e.g., for each geometry in the calling GeoSeries, 'difference' it with all 'other' geometries and return the resultant 'differenced' geometry). For this, a spatial index is important to avoid unnecessary overlay comparisons.A potential API for this type of operation may be something like:
These types of operations would be greatly enhanced (enabled) by a comprehensive spatial index implementation. This would enable something like
obj1.geo_align(obj2)
to be applied before the overlay operation whenby_geom=False
.The text was updated successfully, but these errors were encountered: