Merge of line and polygon layer

4643
4
02-15-2014 03:57 PM
JallouliJallouli
New Contributor
Hello,

I have two layers : Rivers (as a polyline shapefile) and lakes (as a polygon shapefile).

I want to create a new layer of proximity factor to the streams (Rivers and lakes) which varies by intervals from 5 (near the streams) to 1 (the most distant zones).

I used Merge and Union tools. Also I transformed these layers to Raster and I used Euclidean Distance in ArcGIS 10.2... but these solutions didn't work.

Can you show me which solution is the most appropriate to this study case ?

Thank you in advance
0 Kudos
4 Replies
XanderBakker
Esri Esteemed Contributor
Hello,

I have two layers : Rivers (as a polyline shapefile) and lakes (as a polygon shapefile).

I want to create a new layer of proximity factor to the streams (Rivers and lakes) which varies by intervals from 5 (near the streams) to 1 (the most distant zones).

I used Merge and Union tools. Also I transformed these layers to Raster and I used Euclidean Distance in ArcGIS 10.2... but these solutions didn't work.

Can you show me which solution is the most appropriate to this study case ?

Thank you in advance


Hi Jallouli,

There are different solutions to this problem. In case you do this the raster way (Spatial Analyst), you will have to convert the rivers and lakes to rasters (separately). Before doing that it maybe wise to add a new field and fill it with the value 1. Next you will have to create a new raster combining the "rivers" and "lakes" rasters using a Con statement that looks something like:
water = Con(IsNull([rivers]), [lakes], [rivers])

After this you can use the water raster in the Euclidean Distance tool and finish with a reclassify to create the intervals.

It is easier though to do this in vector format. Since it is not possible to merge different geometry types into the same featureclass, you should choose a geometry type that best represents both types of data (lakes and rivers). Since a river has a surface, you can buffer the rivers with a small value (best to choose half the average river width). This results in a polygon featureclass. Merge the buffered rivers with the lakes to create a single polygon featureclass (let's call this "water"). Now buffer the "water" polygons with the "Multiple Ring Buffer" tool and specify the distances you wish. This method is more accurate and less work.

Kind regards,

Xander
0 Kudos
JallouliJallouli
New Contributor
Thank you very much,

Just I inform you that I tried to combine in a unique raster named Constraints:
- The water raster obtained from rivers and lakes layers (having the value 1).
- Roads raster which has the value 100.
- NonForest raster which has the values 1 and 0 (1 for NonForest pixels and 0 for Forest pixels).

So I used Raster Calculator: [Constraints]=[water] + [Roads]+[NonForest]

The result was incomprehensible raster representing points scattered in space and having the values 101 and 102.

I found the same result when I tried to create the following raster (Raster Calculator): [Soil Loss]=[Factors]-[Constraints].

Once again Thank you
0 Kudos
XanderBakker
Esri Esteemed Contributor
Received by email:


Just I inform you that I tried to combine in a unique raster named Constraints:

- The water raster obtained from rivers and lakes layers (having the value 1).
- Roads raster which has the value 100.
- NonForest raster which has the values 1 and 0 (1 for NonForest pixels and 0 for Forest pixels).

So I used Raster Calculator: [Constraints]=[water] + [Roads]+[NonForest]

The result was incomprehensible raster representing points scattered in space and having the values 101 and 102.

I found the same result when I tried to create the following raster (Raster Calculator): [Soil Loss]=[Factors]-[Constraints].


First of all I would like to ask you not to send me data to my work email.

However, I did take a short look at it and I notice the following things:

  • Assuming that the water raster is derived from "riviere" and "lac", if you zoom in close you will notice that there is a shift in pixel location. Please read the Help topic on "How the Snap Raster environment setting works" and make sure your output extent and snap raster is always the same.

  • Make sure that you use one pixel size along your analysis (I see 82m for the water raster, and 50m for the forest raster).

  • The water raster contains 1 for water and NoData for no water. If you sum a value (known value) with a NoData value, the result will be NoData. NoData is not the same as 0. Please read the topic on "NoData and how it affects analysis". So, if NoData means 0, make sure you assign a 0 value to the NoData pixels before combining it with other rasters or handle NoData appropriately.

Kind regards,

Xander
0 Kudos
JallouliJallouli
New Contributor
Thank you very much
0 Kudos