Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I am looking to create an output that consists of an 11KM buffer around a number of discrete points, where the buffer has a value defined by a column in the data sets attribute table. Is this possible? If so, is it possible to aggregate the buffer values that 'overlap'? The points represents the origin of each buffer, where the buffer has an 11Km radius. I would like to assign each circle (I have made the fill 95% transparent to simulate, visually, what I am looking for) a value equal to a column in the attribute table, and then aggregate the values wherever two or more buffers overlap/ So, for instance, the two buffers on the souther edge of the city would have an aggregate value equal to the sum of each of those buffers. The buffers in the middle of the city would have an aggregate value equal to the sum of all overlapping values. In essence, the darker the shade, the higher the value.

Does this make sense?

BTW, thanks @underdark for the suggestion of adding an image.

Red dots represent the points around which the grey buffers (at 11km each) are created.  The underlying polygons are City of Edmonton neighbourhoods.

I was able to add a buffer to the points (as described below) and then by joining the buffer values to the attribute table I was able to define a value for each buffer and visualize, as seen in the following image. Now, I am uncertain how to aggregate the values of each buffer with those that overlap it. I suspect that I need to create a raster of values, but am uncertain. Could anyone please suggest a method?

Individual values assigned to each buffer - seen here as 'low', 'medium', and 'high'

Thank you!

share|improve this question
2  
I feel like this question is not completely clear. Does Vladimir's answer address the point you were trying to make? It would be helpful to add a sketch of what you are looking for. –  underdark Oct 29 '12 at 12:55
1  
Do want aggregate values as the sum of overlapping values, even if they overlap just a little bit? Do you want to preserve all buffers as entire circles, or dissolve some, or split some? Looking at your image I think it requires splitting buffers into pieces and aggregating values for these pieces, or it's just transparency? –  nadya Oct 29 '12 at 22:58
    
Yes, I would like to aggregate values as a sum of the overlap areas - but only of the overlap areas, not of the whole buffer.I suppose I will have to split the buffers and aggregate the bits that overlap. I am uncertain how to do this. –  Matt Dance Oct 30 '12 at 3:04
1  
Vladimir's response does not answer the question. It explains how to buffer using distance values from the attribute table. This question is about buffering all features by the same distance, transferring attributes from the buffered features to the buffers, then summing (or otherwise combining) specific attribute values in the buffers. –  user3461 Oct 30 '12 at 11:00
1  
The buffers represent plums of pollution (really, exposure potential from specific substances) from the emissions sources such that the exposure potential is cumulative from all emissions. As such, I am looking to add all of the overlaps so that each buffer can be separated into as many discrete polygons as their are overlaps. Nadya, I really appreciate your help and thinking on this! –  Matt Dance Oct 31 '12 at 4:24
show 2 more comments

3 Answers

up vote 2 down vote accepted

Since you already have buffers, and assigned values to each buffer, then just need to aggregate the values of overlapping buffers. I think you have two ways:

  1. Split buffers into pieces when they overlap. It was already asked in this question. Hope it will work for you. Then you get overlapping pieces, and you can use Spatial join to help you to aggregate values.

  2. Rasterize buffers. You need to apply Convert vector to raster separately for each buffer (or several buffers which don't overlap), the buffer pixels will have values, surrounding will be 0. Maybe firstly you need to create several shapefiles for each group of non-overlapping buffers. THen just sum all these rasters into one. This was also suggested in this question.

Or, if you dont want to split but to mantain circles with homogeneous value (if it has some meaning), you simply can use Spatial join just to sum values for each circle with those circles which it partially overlays (intersects).

share|improve this answer
add comment

From the menu choose: Vector --> Geoprocessing tools --> Buffer(s)

enter image description here

To aggregate, check box 'Dissolve buffer results'.

share|improve this answer
    
Good tip, but it is not answering the question. As Kevin wrote above in comments, Matt wants to buffer all features by THE SAME distance, transfer attributes from the buffered features to the buffers, then sum values in the buffers, and no dissolving. –  nadya Oct 31 '12 at 3:07
    
Well, at the time the question was asked and not edited, the answer correlated to the question. Ask the right questions if you're going to find the right answers. –  Vladimir Oct 31 '12 at 3:38
1  
The title always said "with buffers at a set radius", and the question always stated that buffers should be 11km. The edit certainly clarified what Matt is trying to accomplish, but the question was not asked incorrectly. –  user3461 Oct 31 '12 at 11:56
add comment

I don't believe so. What you would want to do is first create your 11km buffer, then do a Spatial Join to apply the attribute value in your column to the newly created buffer layer.

Based on your expanded question, I believe that you do want to use a raster approach. I can't think of a way to do what you are asking with vectors, but it should be simple raster math (addition) if you convert things over to raster.

share|improve this answer
    
Darren, can you please have a look at the expanded explanation? I appreciate your thoughts. ~md –  Matt Dance Oct 29 '12 at 21:17
2  
I think this is the way. Firstly buffer, then assign value to each circle, then aggregate. –  nadya Oct 29 '12 at 22:57
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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