Spatial overlays : Union between multiline and multipolygon with geopandasFind pairs of near features with geopandas, fiona, GDAL etcfrom geometrycollection to polygon geometry with pythonDifference between lines and polygons using geopandasgeopandas dissolve versus postGIS postgresql aggregated groupby dissolveKnown Intersecting Polygons returning false for .intersects() in geopandasFilter a GeoPandas dataframe for points within a specific countryBuffer with dissolve - Geopandas - unary_union multipolygonOverlay Union Geopandas improve performanceWhy is Union in ArcMap much faster than other approaches?How to create a shapefile [polygon type] from a Geodataframe, returned from a Oracle Spatial cursor with geometry column type=cx_Oracle.LOB?
Rock identification in KY
Mutually beneficial digestive system symbiotes
What typically incentivizes a professor to change jobs to a lower ranking university?
Theorems that impeded progress
Why are electrically insulating heatsinks so rare? Is it just cost?
A case of the sniffles
Can a Cauchy sequence converge for one metric while not converging for another?
How does one intimidate enemies without having the capacity for violence?
Client team has low performances and low technical skills: we always fix their work and now they stop collaborate with us. How to solve?
Today is the Center
What does it mean to describe someone as a butt steak?
Two films in a tank, only one comes out with a development error – why?
Revoked SSL certificate
Paid for article while in US on F1 visa?
Which country benefited the most from UN Security Council vetoes?
How can bays and straits be determined in a procedurally generated map?
What defenses are there against being summoned by the Gate spell?
Important Resources for Dark Age Civilizations?
Could an aircraft fly or hover using only jets of compressed air?
Why doesn't H₄O²⁺ exist?
Can I ask the recruiters in my resume to put the reason why I am rejected?
Roll the carpet
Can a vampire attack twice with their claws using multiattack?
A newer friend of my brother's gave him load of baseball cards that are supposedly extremely valuable. Is this a scam?
Spatial overlays : Union between multiline and multipolygon with geopandas
Find pairs of near features with geopandas, fiona, GDAL etcfrom geometrycollection to polygon geometry with pythonDifference between lines and polygons using geopandasgeopandas dissolve versus postGIS postgresql aggregated groupby dissolveKnown Intersecting Polygons returning false for .intersects() in geopandasFilter a GeoPandas dataframe for points within a specific countryBuffer with dissolve - Geopandas - unary_union multipolygonOverlay Union Geopandas improve performanceWhy is Union in ArcMap much faster than other approaches?How to create a shapefile [polygon type] from a Geodataframe, returned from a Oracle Spatial cursor with geometry column type=cx_Oracle.LOB?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
I try to overlays (apply union) my multipolygon on the multiline with GeoPandas, but it seem like the GeoPandas overlay function work only with (Multi)polygon. Is there any way to make that with multiline and multipolygon with GeoPandas. Here is my code :
my_shp = gpd.read_file('my_shp.shp') # it's MultiLines shapefile
shp_buf = my_shp.buffer(5)
# as shp_buf it geoSeries i need to convert it to GeoDataFrame
df_shp_buf = gpd.GeoDataFrame('geometry' : shp_buf)
union_1 = overlay(my_shp, df_shp_buf, how = 'union')
And i got this error :
TypeError: overlay only takes GeoDataFrames with (multi)polygon geometries
python shapefile geopandas
add a comment |
I try to overlays (apply union) my multipolygon on the multiline with GeoPandas, but it seem like the GeoPandas overlay function work only with (Multi)polygon. Is there any way to make that with multiline and multipolygon with GeoPandas. Here is my code :
my_shp = gpd.read_file('my_shp.shp') # it's MultiLines shapefile
shp_buf = my_shp.buffer(5)
# as shp_buf it geoSeries i need to convert it to GeoDataFrame
df_shp_buf = gpd.GeoDataFrame('geometry' : shp_buf)
union_1 = overlay(my_shp, df_shp_buf, how = 'union')
And i got this error :
TypeError: overlay only takes GeoDataFrames with (multi)polygon geometries
python shapefile geopandas
What output are you expecting overlaying polygons with lines? Split lines with polygon attributes?
– BERA
Mar 15 at 10:42
Yeah exactly, that what i want to do, to split lines with polygon attributes
– Elite
Mar 15 at 10:56
Can you hard-code some sample geometries using shapely objects?
– Paul H
Mar 15 at 13:59
Yes, i think i can dp that
– Elite
Mar 18 at 5:35
add a comment |
I try to overlays (apply union) my multipolygon on the multiline with GeoPandas, but it seem like the GeoPandas overlay function work only with (Multi)polygon. Is there any way to make that with multiline and multipolygon with GeoPandas. Here is my code :
my_shp = gpd.read_file('my_shp.shp') # it's MultiLines shapefile
shp_buf = my_shp.buffer(5)
# as shp_buf it geoSeries i need to convert it to GeoDataFrame
df_shp_buf = gpd.GeoDataFrame('geometry' : shp_buf)
union_1 = overlay(my_shp, df_shp_buf, how = 'union')
And i got this error :
TypeError: overlay only takes GeoDataFrames with (multi)polygon geometries
python shapefile geopandas
I try to overlays (apply union) my multipolygon on the multiline with GeoPandas, but it seem like the GeoPandas overlay function work only with (Multi)polygon. Is there any way to make that with multiline and multipolygon with GeoPandas. Here is my code :
my_shp = gpd.read_file('my_shp.shp') # it's MultiLines shapefile
shp_buf = my_shp.buffer(5)
# as shp_buf it geoSeries i need to convert it to GeoDataFrame
df_shp_buf = gpd.GeoDataFrame('geometry' : shp_buf)
union_1 = overlay(my_shp, df_shp_buf, how = 'union')
And i got this error :
TypeError: overlay only takes GeoDataFrames with (multi)polygon geometries
python shapefile geopandas
python shapefile geopandas
edited Mar 15 at 10:38
Vince
14.8k32849
14.8k32849
asked Mar 15 at 8:59
EliteElite
182
182
What output are you expecting overlaying polygons with lines? Split lines with polygon attributes?
– BERA
Mar 15 at 10:42
Yeah exactly, that what i want to do, to split lines with polygon attributes
– Elite
Mar 15 at 10:56
Can you hard-code some sample geometries using shapely objects?
– Paul H
Mar 15 at 13:59
Yes, i think i can dp that
– Elite
Mar 18 at 5:35
add a comment |
What output are you expecting overlaying polygons with lines? Split lines with polygon attributes?
– BERA
Mar 15 at 10:42
Yeah exactly, that what i want to do, to split lines with polygon attributes
– Elite
Mar 15 at 10:56
Can you hard-code some sample geometries using shapely objects?
– Paul H
Mar 15 at 13:59
Yes, i think i can dp that
– Elite
Mar 18 at 5:35
What output are you expecting overlaying polygons with lines? Split lines with polygon attributes?
– BERA
Mar 15 at 10:42
What output are you expecting overlaying polygons with lines? Split lines with polygon attributes?
– BERA
Mar 15 at 10:42
Yeah exactly, that what i want to do, to split lines with polygon attributes
– Elite
Mar 15 at 10:56
Yeah exactly, that what i want to do, to split lines with polygon attributes
– Elite
Mar 15 at 10:56
Can you hard-code some sample geometries using shapely objects?
– Paul H
Mar 15 at 13:59
Can you hard-code some sample geometries using shapely objects?
– Paul H
Mar 15 at 13:59
Yes, i think i can dp that
– Elite
Mar 18 at 5:35
Yes, i think i can dp that
– Elite
Mar 18 at 5:35
add a comment |
1 Answer
1
active
oldest
votes
I answer my question maybe it will help, but i use fiona and shapely to do that.
First i recover the coords of shapefile and converted i in MultilineString geometry of shapely:
import fiona as fn
from shapely.geometry import MultiLineString
tab = []
test_shp = fn.open('test_shp.shp') # the shapefile is a MultiLineString
with fn.open('my_shp.shp') as shp: # the shapefile is a Multipolygon
for i in range(0, len(shp)):
tab.append(next(shp))
geom = [tab[x]['geometry'] for x in range(0, len(tab))]
xcoords = [list(geom[x].values())[1] for x in range(0, len(geom))]
multi = MultiLineString(xcoords)
second time i apply the buffer to get an polygon
# buffer
multi_buf = multi.buffer(0.3)
Trird imake my union
#union
xunion_1 = test.union(multi_buf)
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "79"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fgis.stackexchange.com%2fquestions%2f315615%2fspatial-overlays-union-between-multiline-and-multipolygon-with-geopandas%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
I answer my question maybe it will help, but i use fiona and shapely to do that.
First i recover the coords of shapefile and converted i in MultilineString geometry of shapely:
import fiona as fn
from shapely.geometry import MultiLineString
tab = []
test_shp = fn.open('test_shp.shp') # the shapefile is a MultiLineString
with fn.open('my_shp.shp') as shp: # the shapefile is a Multipolygon
for i in range(0, len(shp)):
tab.append(next(shp))
geom = [tab[x]['geometry'] for x in range(0, len(tab))]
xcoords = [list(geom[x].values())[1] for x in range(0, len(geom))]
multi = MultiLineString(xcoords)
second time i apply the buffer to get an polygon
# buffer
multi_buf = multi.buffer(0.3)
Trird imake my union
#union
xunion_1 = test.union(multi_buf)
add a comment |
I answer my question maybe it will help, but i use fiona and shapely to do that.
First i recover the coords of shapefile and converted i in MultilineString geometry of shapely:
import fiona as fn
from shapely.geometry import MultiLineString
tab = []
test_shp = fn.open('test_shp.shp') # the shapefile is a MultiLineString
with fn.open('my_shp.shp') as shp: # the shapefile is a Multipolygon
for i in range(0, len(shp)):
tab.append(next(shp))
geom = [tab[x]['geometry'] for x in range(0, len(tab))]
xcoords = [list(geom[x].values())[1] for x in range(0, len(geom))]
multi = MultiLineString(xcoords)
second time i apply the buffer to get an polygon
# buffer
multi_buf = multi.buffer(0.3)
Trird imake my union
#union
xunion_1 = test.union(multi_buf)
add a comment |
I answer my question maybe it will help, but i use fiona and shapely to do that.
First i recover the coords of shapefile and converted i in MultilineString geometry of shapely:
import fiona as fn
from shapely.geometry import MultiLineString
tab = []
test_shp = fn.open('test_shp.shp') # the shapefile is a MultiLineString
with fn.open('my_shp.shp') as shp: # the shapefile is a Multipolygon
for i in range(0, len(shp)):
tab.append(next(shp))
geom = [tab[x]['geometry'] for x in range(0, len(tab))]
xcoords = [list(geom[x].values())[1] for x in range(0, len(geom))]
multi = MultiLineString(xcoords)
second time i apply the buffer to get an polygon
# buffer
multi_buf = multi.buffer(0.3)
Trird imake my union
#union
xunion_1 = test.union(multi_buf)
I answer my question maybe it will help, but i use fiona and shapely to do that.
First i recover the coords of shapefile and converted i in MultilineString geometry of shapely:
import fiona as fn
from shapely.geometry import MultiLineString
tab = []
test_shp = fn.open('test_shp.shp') # the shapefile is a MultiLineString
with fn.open('my_shp.shp') as shp: # the shapefile is a Multipolygon
for i in range(0, len(shp)):
tab.append(next(shp))
geom = [tab[x]['geometry'] for x in range(0, len(tab))]
xcoords = [list(geom[x].values())[1] for x in range(0, len(geom))]
multi = MultiLineString(xcoords)
second time i apply the buffer to get an polygon
# buffer
multi_buf = multi.buffer(0.3)
Trird imake my union
#union
xunion_1 = test.union(multi_buf)
answered Apr 2 at 9:19
EliteElite
182
182
add a comment |
add a comment |
Thanks for contributing an answer to Geographic Information Systems Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fgis.stackexchange.com%2fquestions%2f315615%2fspatial-overlays-union-between-multiline-and-multipolygon-with-geopandas%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
What output are you expecting overlaying polygons with lines? Split lines with polygon attributes?
– BERA
Mar 15 at 10:42
Yeah exactly, that what i want to do, to split lines with polygon attributes
– Elite
Mar 15 at 10:56
Can you hard-code some sample geometries using shapely objects?
– Paul H
Mar 15 at 13:59
Yes, i think i can dp that
– Elite
Mar 18 at 5:35