The power of GIS is its ability to help us analyse data. Vector data can be analysed to reveal how different features interact with each other. In this module, we’ll work through the GIS process, attempting to solve a problem, and as we proceed, we will learn about various analysis tools that QGIS provides.
Before we start, it will be useful to give a brief overview of a process that can be used to solve any GIS problem. The steps are simple:
- State the problem
- Get the data
- Analyse the problem
- Present the results
Let’s start off by deciding on a problem to solve. Imagine that you’re a disaster manager, and you need to provide the best locations to place refugees (IDPs) in villages surrounding Mount Merapi when it erupts. You’ve come up with the following criteria for these locations:
- The area should be a dry field or farm in the districts Ngemplak, Turi or Pakem.
- The area must be outside of Merapi Eruption Disaster Prone Region III.
- Access to the site should be easy, so it will not be more than 300 metres from a main road.
- The site should be close to health facilities.
- The land area should be between 50000-150000 m².
To answer these questions, we’re going to need the following data:
- Landuse in Sleman regency
- Streets in Sleman
- Location of health facilities
- KRB Merapi (Merapi Eruption Disaster Prone Region - this is the same data that we learned how to georeference in the previous module)
For this exercise the data has been provided already, but in a real scenario you may need to find providers for the datasets in question. In Indonesia, the National Land Agency and BNPB Bappeda are good sources for the types of data you will need, and OpenStreetMap can be used as a source for roads and infrastructure.
Now that we know what we want to do, let’s start doing it!
Most of the layers are pretty self-explanatory, but what are KRB3, KRB2, and KRB1? These layers show areas of impact when Merapi erupts. KRB3 is the area of worst impact, KRB2 is medium, and KRB1 has little impact. In this scenario we want to find locations that are not within KRB3.
The data we are working with now is similar to that from previous modules, but now it is in a Projected Coordinate System. The previous data was saved in WGS84 - this meant that the coordinates of our features were stored in degrees, which aren’t very good for measuring size or distance. By using a projected system our coordinates are in metres, which is important for analysis, because we can easily measure distances between and around features.
This is where you’ll save the datasets that we will create during our anaysis.
Now that we’ve got the data, let’s analyse the problem!
The first criteria we’re facing is that the land must be a farm or dry field, and it must be in one of three areas. So let’s tell QGIS to only show us the farms and dry fields that are, in fact, in these sub-districts!
Next we are going to build a query. A query is a statement that allows us to show only the data that we want from a layer. In this case, we want to instruct QGIS to only show us farms and dry fields, that have a sub-district value equal to Ngemplak, Turi, or Pakem.
The idea is that the query will filter the data layer so that it will only show us the features we want - that is, farms and dry fields in Pakem, Turis and Ngemplak.
Well done! We’ve applied our first criteria to begin solving the problem!
Our next criteria is that our chosen location should be outside of the danger zone, which is defined by the layer KRB III. For this we can use the Spatial Query tool.
Now the vegetasi layer looks like the image below. Notice that all the features have been selected that fall outside the KRB III area.
The next steps of our analysis will be easier if we save this selection as a separate layer.
We have a problem with our roads layer, similar to that of our vegetation layer. Our roads layer has too many roads! We only want to use main roads for our analysis, so that we can meet the criteria that our location is within 300 metres of a major road. Once again, we will use the Query Builder.
“TYPE” = ‘primary’ OR “TYPE” = ‘secondary’
“Fungsi” = ‘Kesehatan’
Okay, we’ve refined our data a bit so that it shows us the features we are interested in analysing. Remember that according to our criteria our land area should be within 300 metres of a main road and close to a health facility. QGIS allows us to calculate distances from any vector object, and we will use this functionality to help us reach a solution.
We input the buffer distance in metres. Good thing we used projected data!
Those big fat lines are actually areas that are within 300 metres of primary and secondary roads.
Remember that the buffer distance is in metres. Keep this in mind when you want to create a 2.5 km buffer!
Now we can see areas where a main road is 300 metres away and where there is a health facility within 2.5 km. But we only want the areas where both of these criteria are satisfied at once! To do that we will use the Intersect tool.
If we hide the original layers, we can see that our new layer shows us the areas where they intersect. These are the areas where both of these criteria are satisfied.
Now we have the layer kebun_tegalan, which satisfies two of our criteria, and the layer intersect_buffer_jalan_kesehatan.shp, which satisfies two other criteria. We need to know where they overlap!
Let’s save this selection as a new layer.
After the process is finish, rename the layers by right-clicking the new kebun_tegalan layer and selecting Rename. Rename with kebun_tegalan_lokasi_terpilih. If we hide all the other layers, we can see the resulting layer:
Hooray! We have now found land areas that meet four of our five criteria. The only remaining criteria is the size of the land. We need to make sure that our possible locations are between 50000-150000 m².
You should now see a new column on your attribute table, named luas_m2. And QGIS has filled it in for us with square metres!
“luas_m2” >= 50000 AND “luas_m2” <= 150000
That’s it! We have eight pieces of land that meet ALL of our criteria. Any of these pieces of land might be suitable for a location to place refugees.