ベクターデータも分析でき、さまざまな地物が空間内でどのように相互作用するかを明らかにできます。GISには多くの異なった分析関連機能があるので、それらすべてを見ていくことはしません。むしろ、問題を提起し、それをQGISが提供するツールを使用して解決しようと試みるつもりです。
このレッスンの目標: 質問を尋ね、分析ツールを使ってそれを解決すること。
始める前に、任意のGISの問題を解決するために使用できるプロセスの簡単な概要を与えることが有用でしょう。それを行う方法は次のとおりです。
問題の状態
データの入手
問題の分析
結果のプレゼン
解決する問題を決定することから手順を開始しましょう。たとえば、不動産業者が以下の基準を持っている顧客のために Swellendam にある居住用の不動産を探しています:
これらの疑問に答えるため、次のデータが必要になるでしょう:
All of this data is available through OSM and you should find that the dataset you have been using throughout this manual can also be used for this lesson. However, in order to ensure we have the complete data, we will re-download the data from OSM using QGIS’ built-in OSM download tool.
ノート
OSMのダウンロードは一貫したデータフィールドを持っていますが、範囲と詳細は多様になってしまいます。たとえば選択した領域にレストランについての情報が含まれていないとわかった場合は、別の地域を選択することが必要な場合があります。
This will import the OSM data as separate layers into your map.
The data you just downloaded from OSM is in a geographic coordinate system, WGS84, which uses latitude and longitude coordinates, as you know from the previous lesson. You also learnt that to calculate distances in meters, we need to work with a projected coordinate system. Start by setting your project’s coordinate system to a suitable CRS for your data, in the case of Swellendam, WGS 84 / UTM zone 34S:
OK をクリックします。
We now need to extract the information we need from the OSM dataset. We need to end up with layers representing all the houses, schools, restaurants and roads in the region. That information is inside the multipolygons layer and can be extracted using the information in its Attribute Table. We’ll start with the schools layer:
Now we need to tell QGIS to only show us the polygons where the value of amenity is equal to school.
The word "amenity" has appeared. To build the rest of the query:
This will filter OSM’s multipolygons layer to only show the schools in your region. You can now either:
Using the above technique, use the Query Builder tool to extract the remaining data from OSM to create the following layers:
You may wish to re-use the roads.shp layer you created in earlier lessons.
Some of the roads in OSM’s dataset are listed as unclassified, tracks, path and footway. We want to exclude these from our roads dataset.
Open the Query Builder for the roads layer, click Clear and build the following query:
"highway" != 'NULL' AND "highway" != 'unclassified' AND "highway" != 'track' AND "highway" != 'path' AND "highway" != 'footway'
You can either use the approach above, where you double-clicked values and clicked buttons, or you can copy and paste the command above.
This should immediately reduce the number of roads on your map:
Because we are going to be measuring distances within our layers, we need to change the layers’ CRS. To do this, we need to select each layer in turn, save the layer to a new shapefile with our new projection, then import that new layer into our map.
ノート
この例では、 WGS 84 / UTMゾーン34S CRSを使用していますが、お住まいの地域のためのより適切なUTM CRSを使用できます。
The new shapefile will be created and the resulting layer added to your map.
ノート
If you don’t have activated Enable ‘on the fly’ CRS transformation or the Automatically enable ‘on the fly’ reprojection if layers have different CRS settings (see previous lesson), you might not be able to see the new layers you just added to the map. In this case, you can focus the map on any of the layers by right click on any layer and click Zoom to layer extent, or just enable any of the mentioned ‘on the fly’ options.
Repeat this process for each layer, creating a new shapefile and layer with “_34S” appended to the original name and removing each of the old layers.
それぞれのレイヤーに対してプロセスが完了したら、いずれかのレイヤーの上で右クリックして、 レイヤー範囲にズーム をクリックして関心領域に地図を集中してください。
今、UTM投影にOSMのデータを変換したので、計算を開始できます。
QGISではどんなベクターからの距離も計算できます。
This gives you a new dialog.
このように設定します:
The Distance is in meters because our input dataset is in a Projected Coordinate System that uses meter as its basic measurement unit. This is why we needed to use projected data.
地図は次のようになっているでしょう:
If your new layer is at the top of the Layers list, it will probably obscure much of your map, but this gives us all the areas in your region which are within 50m of a road.
However, you’ll notice that there are distinct areas within our buffer, which correspond to all the individual roads. To get rid of this problem, remove the layer and re-create the buffer using the settings shown here:
Once you’ve added the layer to the Layers list, it will look like this:
今不要な下位区分はありません。
上記と同じアプローチを使用し、学校のためのバッファを作成します。
It needs to be 1 km in radius, and saved under the usual directory as schools_buffer_1km.shp.
Now we have areas where the road is 50 meters away and there’s a school within 1 km (direct line, not by road). But obviously, we only want the areas where both of these criteria are satisfied. To do that, we’ll need to use the Intersect tool. Find it under Vector ‣ Geoprocessing Tools ‣ Intersect. Set it up like this:
The two input layers are the two buffers; the save location is as usual; and the file name is road_school_buffers_intersect.shp. Once it’s set up like this, click OK and add the layer to the Layers list when prompted.
下の画像で、青色の領域が両方の距離基準が一度に満たされている場所を示しています!
2つのバッファレイヤーを除去しそれらが重なる場所を示すものだけ残しても良いです。それがそもそも本当に知りたかったものですので:
Now you’ve got the area that the buildings must overlap. Next, you want to select the buildings in that area.
このように設定します:
The buildings highlighted in yellow are those which match our criteria and are selected, while the buildings in green are those which do not. We can now save the selected buildings as a new layer.
OK をクリックします。
Now you have the selection as a separate layer and can remove the houses_34S layer.
今、私たちの学校の1キロ内や道路の50メートル内のすべての建物を表示するレイヤーを持っています。今その選択を、レストランの500メートル内にある建物を表示するだけに削減する必要があります。
Using the processes described above, create a new layer called houses_restaurants_500m which further filters your well_located_houses layer to show only those which are within 500m of a restaurant.
To see which buildings are the correct size (more than 100 square meters), we first need to calculate their size.
このように設定します:
OK をクリックします。
編集を終了し、プロンプトが表示されたら、編集内容を保存するには、再度編集モードボタンをクリックします。
QGISベクター分析ツールと一緒にGISの問題解決のアプローチを使用することで、複数の条件での問題を迅速かつ容易に解決できました。
次のレッスンでは、ある地点から別の地点への道に沿って最短距離を計算する方法を見ていきます。