from geopandas import GeoSeries from shapely.geometry import Polygon, Point, LineString pylab.rcParams['savefig.dpi'] = 100 poly1 = Polygon([(0, 0), (1, 0), (1, 1)]) poly2 = Polygon([(2, 0), (3, 0), (3, 1), (2, 1)]) circle = Point([(1.5, 0.5)]).buffer(0.5) g = GeoSeries([poly1, circle, poly2]) print g g.plot() big_circle = Point([1.5, 1.0]).buffer(0.9) g.plot() GeoSeries([big_circle]).plot() g.difference(big_circle) g.difference(big_circle).plot() pts = GeoSeries([Point([0,0]), LineString([[1.5, 1], [1.5, 1.5]]), Point([3,0])]) c = pts.buffer(0.5) g.plot() c.plot() g.union(c).plot() g.intersection(c).plot()