人文地理学研究 第34号「フィールドワーク方法論の体系化―データの取得・管理・分析・流通に関する研究―」

人文地理学研究第34号「フィールドワーク方法論の体系化―データの取得・管理・分析・流通に関する研究―」が,webで公開されていたのに気づきました。pdfで閲覧可能です。

http://www.geoenv.tsukuba.ac.jp/~chicho/pub/WWW/hrg/shg/shg34.html

学生と一緒に調査したりすることもあるので,特に専門外のテーマについてフィールドワークを計画するときに参考になると思いました(学生時代に,もっとほかの人の発表を聞いておけばよかった,と反省しつつ)。

欲を言えば,各テーマ(専門)のフィールドワークにおいて,共通点や相違点などの関係性を示したような図とか表があればよりわかりやすかったかな,とも思いますが,それは自分で整理しなければ,とも思っています(上記ページの『村山祐司:フィールドワークの方法と実践―人文地理学からの発想―.pp. 247-254.』でもまとめられています)。

ポリゴン⇒ラインへ変換

ArcMapで今までメッシュなどのポリゴンデータをポイントデータに変換するとき,いちいち重心のXYデータを計算(ジオメトリ計算)していました。さらに,シェープファイルの重心座標から直接ポイントデータへ変換ができないので,テーブルをdbf形式にエクスポートしてからポイントデータに変換するという手順を踏んでいました…。

ところが,先日の実習で,ポリゴンデータから直接ポイントデータに変換できるツールがArcToolBoxにあることを指摘してもらいました。

Feature To Point (データの管理) [ArcGIS ヘルプ 10.1]
http://resources.arcgis.com/ja/help/main/10.1/index.html#/na/00170000003m000000/

早速やってみると1回の操作でポリゴン⇒ポイントが可能に!今までの作業は一体…。

地図の回転(ArcMap10.1)

ArcMap,地図の表示は何もしないと上が北に設定されています。分析の時などは問題ないのですが,印刷用の地図にするとき,回転させたくなる時が多々あります…(たとえば日本全図とか)。
いままではエクスポートしてから回転させていたのですが…調べてみると,データフレームを回転できることがわかりました。

データ フレームの使用(ArcGIS Resource Center)
http://help.arcgis.com/ja/arcgisdesktop/10.0/help/index.html#//006600000004000000

今までなんで調べなかったんだろう…やっぱりわからなかったり疑問を持ったらGoogle先生にすぐ聞かないと…。

ネットワークボロノイ(by SANET)によるポリゴン作成

東京大学CSISのSANETを最近登録して、使い始めています。いろいろなネットワーク分析ができて、これは便利…。

で、分析ツールのなかに「Voronoi Diagram」があります。よく見かけるのは平面でのボロノイ分割ですが、これはネットワークをボロノイ分割するものです。人や物は基本的に道を使って移動するので、そういった場合は道路ネットワークに基づくボロノイ分割のほうがより適しているはず…。

ただ、このツールは「ネットワーク」を分割するもので、結果のデータはネットワークデータです。なので、たとえばネットワークボロノイ分割されたエリア内の人口などを集計したい場合はこれをポリゴンデータにする必要があります…。調べてみたのですが、SANETツール内にはそうした機能はないみたいです…。

で、いろいろ考えた結果、以下のような方法でやってみました。

  1. ボロノイ分割されたネットワーク上のノードのうち、「Node」を抽出する
  2. 抽出した「Node」で(平面上の)ボロノイ分割をする
  3. ボロノイ分割の結果を、任意のIDでディゾルブする

f:id:nkomaki0314:20180513121620j:plain

豊橋市の小学校データ(by 国土数値情報)で分析してみた結果はこのような感じになりました。色づけされたネットワークがネットワークボロノイの結果、黒い太線が上記の作業で作成したポリゴンです。ところどころちょっと怪しい部分もあるのですが、だいたいいけるのではないか、と思います。簡便法、というやつでしょうか…。

たぶん正確には、ネットワークから徐々にバッファを発生させて、それぞれ分割されたIDがぶつかる部分で境界になるようにやるのだと思います…。

文字列→数値 in ArcMap

ArcMap上で,「文字列」として認識されてしまっている数字を「数値」に変換する方法は…

(1) 属性テーブルで新しい数値フィールドを作る.このときに「桁数」を必ず指定する.
(2) 計算フィールドで,

eval([code])
(「code」は,文字列として認識されてしまっているフィールド名)

 で,OKです.

  調べている最中に,

[code].AsNumber

とすれば良い,との書き込みも見つけたのですが,「オブジェクトがない」と言われてしまいました.自分はVisualBasicの知識がないので,どうすれば良いかわかりません….

 エクセル2003だったら,dbfファイルをいじれたから,こんな作業しなくても良かったのに….dbf編集ソフトも調べてみたのですが,フリーのものは見つけられませんでした.ESRI,登録ユーザーのみでもよいから,dbf編集ソフトを作ってくれないかなぁ….

シリアル値を文字列に

エクセルで「2007年11月5日」と入れるとシリアル値になってしまいますが,それを200711105という文字列(テキスト)に直す方法です.
A1セルに値が入っていた場合

=text(A1,"yyyymmdd")

とすれば大丈夫です.

f:id:nkomaki0314:20180513120007g:plain

イラストレーターで、ちょっといつもとは違うように(たとえば台形とか)変形させたい時に…

(1) 変形させたいオブジェクトを選択

(2) 自由変形ツールを選択

(3) オブジェクトの角をクリック

(4) (3)のまま、Ctrlキー+ALTキーを押す(カーソルが変わる)

(5) (4)のまま、Shiftキーを押す

この方法でやると、台形っぽくオブジェクトを変形できます(上の画像参照)。
(5)をはぶくと、また違う感じに変形できます。