4

I have created a series of isochrones for public transport, for the bus, tram and train, with a 5 and 10 minute walking range. Now I would like to aggregate these values to show which areas are most accessible.

enter image description here

I have assigned 1-6 values for each of these layers, which I would then like to aggregate, for instance, 5 minutes access to a train station has the value of 6, but when it would be accessible by tram within 5 minutes, the shape should get an even higher value. How could this be achieved?

1
  • 2
    Please tell us a little bit more about your data: you have raster or vector data you want to aggregate? How is it structured? Best would be sharing your project/data (at least a sample) for testing.
    – Babel
    Commented Sep 2, 2021 at 10:00

1 Answer 1

1

For raster layers, use raster calculator and create the sum of the values. For polygon layers, proceed as follows:

  1. Get all your isochrone layers in one with Merge vector layers

  2. Get the Bondary

  3. Create separate polygons with Split with lines (inputs: layeres from step 1 and 2)

  4. Delete duplicate geometries

  5. Use this expression to calculate for each intersecting part the sum of the value attribute from all the layers that are mentioned in line 3 (array_sum is available since QGIS 3.18):

array_sum (
    array_foreach (
        array ('poly1','poly2','poly3'),
        array_sum(
            overlay_within( @element, value)
)))

The expression is used here as dynamic label to calculate the sum of the intersection polygons. Red polygon has value 1, yellow of 2 and blue of 3. The black lines shows the splitted polygons (intersecting parts): enter image description here

1
  • Thanks for the idea, I eventually came up with a different solution: I first dissolved the isochrones to create polygons for each mode of transport and travel range. Then I intersected the ones that were relevant, merged the layers and added a new numeric field with 1-14 values, to sort and weight their importance.
    – Topow
    Commented Sep 2, 2021 at 12:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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