平成 29 年 2 月 10 日 QGIS を利用したがん登録データ分析研修会研修資料 岐阜大学流域圏科学研究センター 児島利治 1. QGIS とは フリーのオープンソース地理情報システム (URL: http://qgis.org/ja/site/) 地理情報システム (GIS: Geographic Information System) とは 地理的位置を手がかりに, 位置に関する情報を持ったデータ ( 空間データ ) を総合的に管理 加工し, 視覚的に表示し, 高度な分析や迅速な判断を可能にする技術 属性情報が付加された電子地図 商用 GIS の例 :ArcGIS(ESRI 社 ),SIS 2. QGIS の起動 スタートメニューより,QGIS Desktop 2.14.8 with GRASS 7.0.5( 又は QGIS Desktop 2.14.8) をクリックして起動する. GRASS は画像データ ( ラスタデータ ) を処理するフリーのアプリケーション QGIS の起動直後の画面 -1-
3. 空間データ GIS で用いられるデータ 空間データの例 : Shape file:arcgis で用いられるデータ形式, デファクトスタンダード G-XML: 国内データの標準形式 空間データとは, 地物 ( フィーチャー ) の位置を示すデータ ( 幾何情報 図形情報 ) と, その地物の特徴のデータ ( 属性情報 ) で構成される GIS で利用するデータ形式である. 幾何情報 図形情報 地表, 地下, 地上の土地および構造物の地理的位置, 高さ, 形状, 範囲など 属性情報 自然, 社会, 経済などの特性 土地利用, 地価, 人口など 空間データの表示 ディレクトリ data の下の医療圏.shp を QGIS の左上の レイヤパネル へドラッグ & ドロップする. 医療圏.shp を表示した画面 -2-
属性テーブルの表示 左上のレイヤパネルの中で, 医療圏 の上にカーソルを置き, 右クリックする. 表示されたダイアログの 属性テーブルを開く (O) をクリックすると 属性テーブルを開 く を左クリック 医療圏 上にカーソ ルを置き右クリック 属性テーブルの開き方 幾何情報と属性情報はそれぞれ関連づけられている. フィールド レコード 属性テーブル 幾何情報 ( ポリゴン ) 幾何情報と属性情報の関連 -3-
Shape file( シェープファイル ) ArcGIS で用いられるベクター型データ 様々な GIS ソフトで利用可能 シェープファイルは主に以下の 5 つのファイルで構成される..shp (shape format): シェープファイルのポイント, ライン, ポリゴンなどのフィーチャの幾何情報 ( ジオメトリ ) を格納したファイル.dbf (attribute format): シェープファイルの属性情報を保存したファイル. dbase IV 形式ファイル.MS Excel などで開くことができる..shx (shape index format):.shp と.dbf を連結させるインデックス情報を格納したファイル.prj (projection format): シェープファイルの投影座標系情報を格納したファイル..qpj:QGIS 用の投影座標系情報ファイル 4. 属性情報の結合と表示 GIS では, エクセル等の表データを属性情報として使うことができる. 表データの GIS への追加 レイヤパネルへ, 医療圏別罹患数( 上皮内がんを含む ).xlsx をドラッグ& ドロップする. 空間データの場合と同様にして 医療圏別罹患数 ( 上皮内がんを含む ) の属性テーブルを表示する. 属性テーブルを開 く を左クリック 追加したエクセルデータに カーソルを置き右クリック エクセルデータの追加とテーブルの表示 -4-
追加したテクセルのテーブルは, シェープファイル 医療圏.shp の属性テーブル と同じ値を持つフィールド 医療圏 をキーとして結合することができる. 2 つのテーブルは独立しているが, 同じ値を持つフィールドをキーとして繋げることができる. 医療圏別罹患数 ( 上皮内がんを含む ).xlsx のテーブル 属性テーブル 幾何情報 ( ポリゴン ) 属性テーブルの結合 エクセルデータをシェープファイルに結合する. レイヤプロパティ の表示 結合先の 医療圏 の上にカーソルを置き, 右クリックする. ダイアログ内の プロパティ をクリックする. ベクタ結合の追加 ダイヤログの表示 レイヤプロパティの 結合 をクリックする. ダイアログ下部の + ボタンをクリックする. -5-
1 結合 をクリック 2 + をクリック レイヤプロパティ テーブル結合 レイヤの結合 に結合する属性テーブルを選択する.( 今回は 医療圏別罹患数 ( 上皮内がんを含む ) が自動選択されている) フィールドを結合する, ターゲットフィールド に結合に利用するキーとなるフィールド名を選択する.( 今回は, 両方とも 医療圏 を選択する.) OK を選択する. レイヤプロパティでも OK または 適用 を選択する. ベクタ結合の追加ダイアログ -6-
医療圏.shp の属性テーブルに, エクセルデータのフィールド Sum が追 加される. エクセルデータのテーブルが結合された 医療圏.shp の属性テーブル 色付け表示 医療圏別罹患数 (Sum) を用いて, 色付け表示を行う. 医療圏.shp のレイヤプロパティで スタイル を選択する. 一番上の 共通シンボル のプルダウンメニューから 段階に分けられた を選択する. 1 プルダウンメニューより 段階に分けられた を選択 レイヤプロパティ スタイル の初期画面 -7-
2 医療圏別罹患数 ( 上皮内がん を含む )_Sum を選択 3 分位 ( 等量 ) を選択する 4 分類 をクリック レイヤプロパティ スタイル の 段階に分けられた を選択した画面 医療圏.shp のレイヤプロパティで スタイル を選択する. カラム のプルダウンメニューで, 医療圏別罹患数( 上皮内がんを含む )_Sum を選択する. モード のプルダウンメニューで 分位( 等量 ) を選択する. 分類 をクリックする. 適用 または OK をクリックする. 凡例の色 付け基準 5 段階に色 付け表示 値ごとに色付け表示された空間データ -8-
ラベル表示 各医療圏の名称を空間データ上に表示する. レイヤプロパティの ラベル を選択する. ラベルなし をプルダウンメニューで このレイヤのラベル表示 を選択する. ラベル で 医療圏 を選択する. 文字の装飾例 テキスト で 文字の大きさを 12pt に変更する. 文字色を赤色に変更する. バッファ を選択 テキスト縁取りの描画のチェックボックスにチェックを入れる. 影 を選択 ドロップシャドウの描画のチェックボックスにチェックを入れる. 適用 または OK をクリックする. 1 このレイヤのラベル表示 を選択 2 医療圏 を選択 3 大きさを 12pt に変更 4 文字色を赤に変更 レイヤプロパティ ラベル の このレイヤのラベル表示 を選択した画面 -9-
ラベル文字の装飾 バッファ と 影 医療圏のラベル表示 5. 地図の作成と印刷 地図の装飾を施して,pdf ファイルを作成する. QGIS では, プリントコンポーザー上で印刷する地図のデザインを作成する. -10-
プリントコンポーザーの起動 メニューより, プロジェクト (J) > 新規プリントコンポーザー (P) を選択する プリントコンポーザー名を入力して OK をクリックする. プリントコンポーザー 地図の追加 メニューより, レイアウト (L) > 地図の追加 (M) を選択する. カーソルが + となるので, マップ上でドラッグして適当なサイズの枠を作成すると QGIS の画面に表示されている空間データがマップコンポーザーに表示される. プリントコンポーザーの地図追加例 -11-
地図装飾の追加 凡例の追加 レイアウト (L) > 凡例を追加 (D) カーソルをドラッグして適当な位置に凡例を追加する. 凡例の整形 例えば, 凡例の項目を 医療圏別罹患数 ( 上皮内がんを含む )[ 人 ] に変える. アイテムプロパティ の下の方にあるアイコンをクリックして, エクセルデータである 医療圏別罹患数 ( 上皮内がんを含む ) を非表示とする. アイコンをクリック 項目の非表示 QGIS の方のレイヤパネルで, 医療圏 上で右クリック> 名前を変更する (N) を選択し, レイヤの名称を 医療圏別罹患数 ( 上皮内がんを含む )[ 人 ] に変える. レイヤパネルで変更したレイヤ名がプリントコンポーザー上に反映される. レイヤ名の変更 -12-
スケールバーの追加 レイアウト (L) > スケールバーを追加 (A) カーソルをドラッグして適当な位置にスケールバーを追加する. 装飾文字の追加 レイアウト (L) > ラベルを追加 (E) カーソルをドラッグして適当な位置にラベルを追加する. 右側にある アイテムプロパティ 内に適当な文字を入力する. 外観 >フォントでフォント, フォントサイズを修正する. その他 ポリゴン境界線の太さの変更 レイヤパネルの凡例をクリックして シンボルセレクタ を表示する. シンプル塗りつぶし を選択 ボーダー太さ の値を大きくする( 例えば 0.66mm) OK をクリックする. 最後にプリントコンポーザーの方で, ビュー (V)> 更新 (R) をクリックして, マップ表示の変更を更新する. シンプル塗りつぶし を選択 ボーダー太さの値を 変更 ポリゴン境界線の変更 -13-
PDF で出力 プリントコンポーザーのメニューより, コンポーザ (C)>PDF としてエクスポート (E) を選択する. ダイアログ内に PDF ファイル名を入力して PDF ファイルを保存する. 出力された PDF ファイル 6. アドレスマッチングを用いた点データの作成 アドレスマッチングとは住所の文字列を利用して, その場所の緯度経度座標を生成する技術のことである. 日本の番地システムは, 住所そのものが住民の申請による, 枝番が生成される場合が有る等の理由により, 正確なアドレスマッチングには不向きである. アメリカのようなストリート名, ストリートの端からの距離で生成される住所システムはアドレスマッチングに非常に適応している. -14-
東京大学空間情報科学研究センター (CSIS) の CSV アドレスマッチングサービスを利 用する. (http://newspat.csis.u-tokyo.ac.jp/geocode-cgi/geocode.cgi?action=start) 住所情報が記載された病院施設一覧.xlsx から名前を付けて保存で,CSV ファイル ( 病院施設一覧.csv) を作成する. CSV ファイルとは :Comma Separated Value ファイル. カンマ (, ) で値が区切られたテキストファイル. CSV アドレスマッチングサービスで以下のように設定する. 対象範囲 : 岐阜県街区レベル ( 公共測量座標系 世界測地系 ) 住所を含むカラム番号 : 2 入力ファイルの漢字コード : 自動設定 出力ファイルの漢字コード : 入力ファイルと同じ マッチングオプション : xy を反転にチェック, 部分一致を 探す 変換したいファイル名の参照をクリックして, 病院施設一覧.csv を選択する. CSV アドレスマッチングサービス -15-
文字化けしたファイル名が転送されるので, 保存して適当な名称に変更する. 例えば : 病院施設一覧 XY.csv 拡張子を.csv か.txt にすること. CSV アドレスマッチング結果の保存 アドレスマッチングの結果 座標情報 (fx, fy) と iconf, ilvl というフィールドが追加されている. ilvl が 0 より小さい行は, 正確に座標が推定されていない. 医療法人白水会白川病院の座標推定値が -99999.9 になっている CSV アドレスマッチング結果 ( 病院施設一覧 XY.csv) -16-
XY 座標情報を用いて,QGIS でポイントデータを作成する. 左側のツールバーより, デリミティッドテキストファイルからレイヤを作成 を クリックする. デリミティッドテキストファイルか らレイヤを作成 ダイアログ内で以下のように設定 ファイル名 : CSV アドレスマッチングで保存したファイル名 病院施設一覧 XY.csv を選択する. エンコーディング :Shift_JIS ファイル形式 :CSV ジオメトリ定義 : ポイント座標 X フィールド :fx,y フィールド :fy デリミティッドテキストファイルからレイヤを作成 -17-
レイヤパネルに 病院施設一覧 XY というレイヤが出現するので, 右クリック して, レイヤプロパティを表示する. 病院施設一覧 XY を右クリックして, プロパティを選択する レイヤプロパティの表示 レイヤプロパティの 一般情報 を選択する. 空間参照システムのプルダウンメニューより, EPSG:2449 - JGD2000 / Japan Plane Rectangular CS VII を選択する. OK または 適用 をクリックする. 病院施設の位置が点データとして画面上に表示される. 空間参照システム ( 座標系 ) の選択 -18-
ilvl <= 0 のエラー値 病院施設点データの表示 ベクタデータの保存 レイヤパネルの 病院施設一覧 XY で右クリック > 名前をつけて保存する... パスのブラウズをクリックして適当な名称を付けて保存する. ベクタデータの保存 -19-
ベッド数による色付け表示 病院施設一覧 XY のレイヤプロパティを表示 スタイル を選択, 段階に分けられた を選択 カラムに NumBed を選択 色調, 分類数を適宜変更し, 分類ボタンをクリックする. 病院施設点データの色付け設定 ベッド数で色付け表示された病院施設点データ -20-
プリントコンポーザーで PDF ファイルに出力 病院施設一覧 XY のレイヤ名をレイヤプロパティの一般で, 病院施設ベッド数 に変更 プリントコンポーザーで PDF としてエクスポート 出力された PDF ファイル -21-
付録 1 座標系の設定 GIS は,3 次元の地球を 2 次元で表現するために, 様々な座標系を利用する. メルカトル図法 横メルカトル図法 一般に日本の地図では以下のような横メルカトル図法を用いた座標系が用いられる. これらの座標系の単位 ( 座標値 ) は通常メートルである. UTM(Universal Transverse Mercator) 図法 赤道上に原点がある 岐阜県は Zone53 ( 東経 135 度 ) を用いる 2 万 5 千分の 1 地形図 平面直角座標系 (19 座標系, 公共測量座標系 ) 国内に 19 点の原点がある. 岐阜県は第 7 系 ( 北緯 36 度, 東経 137 度 10 分 ) 2 万 5 千分の 1 地形図より詳細な地形図に用いられる. 一方, 十進緯度経度をそのまま座標値として用いる場合もある. 緯度経度座標系 緯度経度座標系の座標値単位は通常は DD (Decimal Degree) 137 度 10 分 137.166667-22-
測地系 (Datum) 横メルカトル図法等の投影法は, 地球を回転楕円体と仮定しているが, 実際の地球のジオイド面は凸凹しているため, 日本国内の各地点における位置をある基準 ( 測地系 ) に従って決定しておく必要がある. 日本で使用される主な測地系は以下の 4 つ 日本測地系 (Tokyo Datum, 旧測地系 ) 2001 年 4 月以前の地図に適用 日本測地系 2000(JGD2000, 世界測地系, 新測地系 ) 2001 年 4 月 ~2011 年 10 月 局地座標系から世界測地系へ 日本測地系 2011(JGD2011) 2011 年 10 月以降の地図に適用 JGD2000 より東日本大震災による地盤のずれを修正 WGS84 GPS で用いられている測地系 JGD2000,JGD2011,WGS84 は数 cm 程度の誤差であり, 粗い地図を使う場合はそ れほど厳密に考えなくとも大丈夫. JGD2011 は, 日本測地系 2011 という意味 Japan Plane Rectangular CS VII は, 日本平面直角座標系 VII 系という意味 QGIS のレイヤプロパティ 公共測量座標系 世界測地系 CSIS の CSV アドレスマッチング 平面直角座標系 JGD2000 という意味 さらに岐阜県なので, 第 7 系 座標系設定の例 -23-
付録 2 空間解析 ( ポリゴン内の点の集計 ) 医療圏ポリゴン内に含まれる病院施設ベッド数データを合計して, 医療圏ごとの総ベッド数を算出する. 病院施設一覧 XY.csv の修正 2 バイト文字が混在しているとうまく集計できないので,NumBed, fx, fy だけ残して, 他のカラム ( 名称, 所在地,iConf, ilvl) を削除して保存する ( 病院施設一覧 XY2.csv). 病院施設一覧 XY.csv の修正 病院施設一覧 XY.csv の場合と同じように, デリミティッドテキストファイルからレイヤを作成 でポイントレイヤを作成する. レイヤプロパティで, 空間参照システムを JGD2011/Japan Plane Rectangular CS VII に設定する. メニューのベクタ (O)>データマネジメントツール(D)> 場所で属性を結合する... を選択し, 場所で属性を結合する を表示させる. 以下のように設定する. 対象ベクタレイヤ : 医療圏 結合するベクタレイヤ : 病院施設一覧 XY2-24-
属性の集計方法 交差する全ての地物の属性を利用する にチェック 合計 にチェック ブラウズ をクリックして, 出力シェープファイル名 ( 例えば集計.shp) を設定する. OK をクリックする. 場所で属性を結合する を選択 場所で属性を結合する の表示 場所で属性を結合する の設定 -25-
ポリゴン中の点を数える ダイアログを 閉じる で閉じる. 新しく表示された 集計 ポリゴンの属性テーブルを開く. 医療圏ポリゴンごとに, 各ポリゴン内に含まれる病院施設一覧 XY2 の属性情報の合計値 (SUMNumBed,SUMfX, SUMfY) と含まれる点数 (COUNT) が保存されている. 医療圏ごとに集計された集計ポリゴンの属性テーブル dbaseiv ファイル (.dbf) は, エクセルで表示できる. エクセルで集計.dbf を開き, 名 前を付けて保存により, エクセル形式 (.xlsx) で保存できる. エクセル形式で保存した集計.xlsx ファイル -26-
医療圏別ベッド数マップ 本講習では, 以下のデータより改変した講習用データを講習に用いています. 1) 国土数値情報医療圏データ (http://nlftp.mlit.go.jp/ksj/gml/datalist/ksjtmplt-a38.html) 2) 岐阜県地域がん登録平成 24 年次集計結果 3) 岐阜県病院施設一覧 (https://www.pref.gifu.lg.jp/kodomo/iryo/iryo-kikan/11229/byoin-meibo.data/27_m eibo.pdf) -27-