title: Geopandas: Get a box that coveres area of a geopandas GeoDataFrame to use it to invert a map
body: <p>I'm trying to invert a map.</p>
  
  <pre><code>import geopandas as gpd
  import geoplot as gplt
  
  world = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres'))
  denmark = world[world.name == 'Denmark']
  </code></pre>
  
  <p>I would like to find out the boundaries of the "denmark" dataframe, to that I can create a box shaped GeoDataFrame that covers all of Denmark. </p>
  
  <p>I'd then intersect that with "denmark" to get a shape of all that is not denmark, which I can later use to cover parts of a map I don't want to show.</p>
  
  <p>I tried looking through the GeoDataFrame to create this box manually, but that doesn't work well.</p>
  
  <pre><code>cords = [c3
           for c in mapping(denmark['geometry'])['features']
           for c2 in c['geometry']['coordinates']
           for c3 in c2
          ]
  
  
  xcords = [x[0] for x in cords if isinstance(x[0], float)]
  ycords = [y[1] for y in cords if isinstance(y[1], float)]
  
  w3 = gpd.GeoDataFrame(
      [Polygon([[max(xcords), max(ycords)],
           [max(xcords), min(ycords)],
           [min(xcords), min(ycords)],
           [min(xcords), max(ycords)]
           ])],
      columns = ['geometry'],
      geometry='geometry')
  </code></pre>
  
  <p>Is there an easy, quick way to get this box?
  Or is there a way tp invert a GeoDataFrame?</p>