03/30 地域メッシュコードを緯度経度に変換する

先日やった仕事で、地域メッシュコードデータを緯度経度に変換する必要があった。地域メッシュコードというのはJISで制定されている規格で、日本全国をマス目に分けてコードを割り振ったもの。コードからどの地域かがわかるようになっている。

マス目の大きさで1次メッシュ、2次メッシュ、3次メッシュの3パターンが決まっている。

1次メッシュは4桁の数字で表され、縦が約70km、横が約90kmの範囲に入る。緯度経度で言えば緯度40分、経度1度。20万分の1地形図がカバーする範囲とほぼ同じだ。たとえば東京都は5339となる。

2次メッシュは1次メッシュを縦横8等分したもので、1次メッシュの4桁に加え2桁、合計6桁の数値となる。縦横が約10km、緯度では5分、経度では7分30秒の範囲になる。2万5000分の1地形図の範囲にだいたい等しい。

3次メッシュは2次メッシュを縦横10等分したもので2次メッシュに加え2桁の合計8桁で表される。縦横がおよそ1kmで緯度にして30秒、経度では45秒になる。

たとえば新宿区新宿2-1-1にあるエルデは、緯度35.68823693、経度139.70974445、3次メッシュコード53394526となる。

これまで、生物や鉱物などの分布調査では地図から場所を特定していたため、メッシュコードが使われてきた。慣れている人ならばコードを聞いただけでだいたいの場所がわかるという。だが、現在ではハンディGPS、GPS搭載携帯電話、GPS搭載デジタルカメラなどが普及し、ピンポイントで調査地点の緯度経度が入手できるようになってきた。1km四方というおおざっぱなメッシュコードよりも北緯○○度××分△△秒、東経○○度、××分、△△秒といった詳細データの方がいいのは決まり切ったことだ。GoogleMapなどでも緯度経度を入力すればその場所の地図が表示される。

そこで、これからの調査は緯度経度を優先して登録していくことになったのだが、問題は過去の膨大な調査データ。メッシュコードで記録されているため、緯度経度に変換しなければならない。

メッシュコードから緯度経度に変換する方法というのは公開されている。

1次メッシュ
 緯度方向:上二桁÷1.5 (単位:度)
 経度方向:下二桁+100 (単位:度)

2次メッシュ
 緯度方向:5桁目×5 (単位:分)
 経度方向:6桁目×7.5 (単位:分)

3次メッシュ
 緯度方向:7桁目×30 (単位:秒)
 経度方向:8桁目×45 (単位:秒)

53394526というメッシュコードから計算するには

経度:53÷1.5=35.333度
経度:39+100=139度

緯度:4×5=20分
経度:5×7.5=37.5分

緯度:2×30=60秒
経度:6×45=270秒

つまり
北緯35度51分
東経139度42分
となる。
もっともこの数値は度以下が60進数表記である分、秒なので使いにくい。そのままではGoogleMapなどに放り込むことができない。度以下を10進数に変換しなければいけない。

繰り上がりの計算もあるので、全部秒に換算して合計し、最後に割ってやればよい。

(53÷1.5×3600+4×5×60+2×60)÷3600=35.68
((39+100)×3600+5×7.5×60+6×45)÷3600=139.70

もちろん、メッシュコードは3次メッシュでも縦横1kmの範囲を持つハコであり、緯度経度はピンポイントだから、当然ずれが生じる。メッシュコードから計算される緯度経度はブロックの左下を示していることに注意が必要だ。

Excelで3次メッシュコードから緯度経度を求める式は次の通り(M列にメッシュコードが入っている)

緯度:=(LEFT(M1,2)/1.5*3600+MID(M1,5,1)*5*60+MID(M1,7,1)*30)/3600
経度:=((MID(M1,3,2)+100)*3600+MID(M1,6,1)*7.5*60+MID(M1,8,1)*45)/3600

「03/30 地域メッシュコードを緯度経度に変換する」への3件のフィードバック

  1. はじめまして、守安と申します。
    この変換ができないか、1年前に探してみましたが、数式は見つからずあきらめていました。だめもとで、今日探しましたらmasaruさんのブログに行き着きました。実は、トンボの分布データを岡山県でまとめています。これで、地図にプロットできるかもしれません。ありがとうございました。私も今年銀婚式(2人で旅行に行ったくらいですが)です。

  2. はじめまして、稲田と申します。
    私は、大学生なのですがメッシュデータを使う機会があり、このブログを見て大変勉強になりました。本当にありがとうございます。大変申し訳ないのですがこのブログをみて質問なのですが、
    2分の1、4分の1メッシュもあると思うのですが、その時の地域メッシュコードから緯度経度に変換する方法がわからないのですがよろしければ教えていただけないのでしょうか?自分で考えてみたのですが3次メッシュまでと違いメッシュの区切り方が違うのでエクセルで変換しようにもどうしていいかわかず大変困っています。どうか宜しくお願いします。

  3. はじめまして,大学生・工学部4年生の斎藤と申します.
    現在,卒業研究で地域メッシュコードを扱うこととなり,このブログを拝見しました.
    地域メッシュコードから緯度・経度への変換についての理解が深まり,
    とても嬉しく思っております.
    ここでひとつ教えていただきたいことがあります.
    現在,緯度・経度からメッシュコードへの変換方法を検討しているのですが,
    これが全くわからず,困っております.
    できれば10桁メッシュに変換したいと思っておりまして,
    最低でも標準地域メッシュコードには変換したいと考えております.
    緯度・経度からメッシュコードに変換する方法があれば何か教えてください.
    よろしくお願いいたします.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


*