4

I need to join two layers (a fishnet grid and land cover). I'd like the join to occur only if the the land cover occupies 50% or more of each fishnet grid (See image below).

Can anybody provide an example or point me in the right direction?

More details: Ideally I only need the grids to be created that contain 50% or more of the land cover layer.

enter image description here

  • What have you tried already? – Branco Aug 26 '15 at 15:49
3

You can do this in a few steps:

edit: As Ali pointed out, you do need your grid to be polygons, not lines for this workflow.

  • Create a field on the grids to hold the area of each grid (or since they are the same in this case, just note what that area is)
  • Intersect the grids and land usage layers.
  • Compare the area of each output polygon from the intersect to the area of the grid and exclude any that aren't 50%. I.E:
    • Select all features where (SHAPE_AREA / GRID_AREA) >= 0.5
    • Export those selected features into a new feature class
  • Join the filtered land use attributes back to the grids.
    • You could use Join Field, joining on the FIDs output by the intersect tool or,
    • Spatial Join the exported selection from above to the original grid. Just be sure to use CONTAINS and not INTERSECTS.
  • 2
    It's worth noting that you will have to run the Create Fishnet Tool with the Geometry Type (optional) set to POLYGON for the intersect to work. If the output is POLYLINES (the default) the intersections will also be lines. – Ali Aug 26 '15 at 16:09
  • Thanks! You might add to the answer for future users: make sure to re-calculate the area of land cover after running intersect. then compare land area vs grid area. – SoilSciGuy Aug 26 '15 at 20:41
  • Thanks @Ali. It's a polygon as pictured, showing only borders. – SoilSciGuy Aug 26 '15 at 22:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.