勉強したことのメモ

webプログラマが勉強したことのメモ。

GoogleMapで都道府県の中心地と県庁所在地

      2021/03/11

GoogleMapで都道府県の中心地もしくは県庁所在地にマーカーを立てたかった。後で使いまわしやすいようMySQLのデータとマップのサンプルを以下に方法をメモ。

 

サンプル

中心地にマーカーを立てたマップ

http://sample.taitan916.info/gmap_prefecture/

県庁所在地にマーカーを立てたマップ

http://sample.taitan916.info/gmap_prefecture/index2.php

 

事前準備

マップ自体は以前に作成した以下のものを使用した。

https://taitan916.info/blog/?p=2845

 

テーブルの作成

以下でテーブル作成。

CREATE TABLE `prefecture` (
  `pid` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `lat` varchar(255) NOT NULL,
  `long` varchar(255) NOT NULL,
  PRIMARY KEY (`pid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

中心地のデータ

INSERT INTO `prefecture` (`pid`, `name`, `lat`, `long`) VALUES
(1,	'北海道',	'43.46722222',	'142.8277778'),
(2,	'青森県',	'40.78027778',	'140.8319444'),
(3,	'岩手県',	'39.59138889',	'141.3625'),
(4,	'宮城県',	'38.44555556',	'140.9280556'),
(5,	'秋田県',	'39.7475',	'140.4086111'),
(6,	'山形県',	'38.44638889',	'140.1027778'),
(7,	'福島県',	'37.37888889',	'140.2252778'),
(8,	'茨城県',	'36.30638889',	'140.3186111'),
(9,	'栃木県',	'36.68916667',	'139.8191667'),
(10,	'群馬県',	'36.50388889',	'138.9852778'),
(11,	'埼玉県',	'35.99666667',	'139.3477778'),
(12,	'千葉県',	'35.51277778',	'140.2038889'),
(13,	'東京都',	'35.01833333',	'139.5986111'),
(14,	'神奈川県',	'35.41416667',	'139.3402778'),
(15,	'新潟県',	'37.51888889',	'138.9172222'),
(16,	'富山県',	'36.63611111',	'137.2680556'),
(17,	'石川県',	'36.76583333',	'136.7713889'),
(18,	'福井県',	'35.84666667',	'136.2272222'),
(19,	'山梨県',	'35.61222222',	'138.6116667'),
(20,	'長野県',	'36.13',	'138.0438889'),
(21,	'岐阜県',	'35.7775',	'137.055'),
(22,	'静岡県',	'35.01694444',	'138.33'),
(23,	'愛知県',	'35.03444444',	'137.215'),
(24,	'三重県',	'34.51361111',	'136.3813889'),
(25,	'滋賀県',	'35.21527778',	'136.1380556'),
(26,	'京都府',	'35.25194444',	'135.4458333'),
(27,	'大阪府',	'34.62277778',	'135.5111111'),
(28,	'兵庫県',	'35.03694444',	'134.8286111'),
(29,	'奈良県',	'34.31555556',	'135.8713889'),
(30,	'和歌山県',	'33.90944444',	'135.5133333'),
(31,	'鳥取県',	'35.36055556',	'133.8516667'),
(32,	'島根県',	'35.07305556',	'132.5594444'),
(33,	'岡山県',	'34.90083333',	'133.8152778'),
(34,	'広島県',	'34.60361111',	'132.7875'),
(35,	'山口県',	'34.19861111',	'131.575'),
(36,	'徳島県',	'33.91805556',	'134.2430556'),
(37,	'香川県',	'34.24305556',	'133.9966667'),
(38,	'愛媛県',	'33.62194444',	'132.8558333'),
(39,	'高知県',	'33.42111111',	'133.3666667'),
(40,	'福岡県',	'33.5225',	'130.6680556'),
(41,	'佐賀県',	'33.28527778',	'130.1169444'),
(42,	'長崎県',	'33.2275',	'129.6141667'),
(43,	'熊本県',	'32.615',	'130.7563889'),
(44,	'大分県',	'33.19916667',	'131.4341667'),
(45,	'宮崎県',	'32.19083333',	'131.3005556'),
(46,	'鹿児島県',	'31.01277778',	'130.4241667'),
(47,	'沖縄県',	'25.77111111',	'126.64');

 

県庁所在地のデータ

INSERT INTO `prefecture` (`pid`, `name`, `lat`, `long`) VALUES
(1,	'北海道',	'43.06417',	'141.34694'),
(2,	'青森県',	'40.82444',	'140.74'),
(3,	'岩手県',	'39.70361',	'141.1525'),
(4,	'宮城県',	'38.26889',	'140.87194'),
(5,	'秋田県',	'39.71861',	'140.1025'),
(6,	'山形県',	'38.24056',	'140.36333'),
(7,	'福島県',	'37.75',	'140.46778'),
(8,	'茨城県',	'36.34139',	'140.44667'),
(9,	'栃木県',	'36.56583',	'139.88361'),
(10,	'群馬県',	'36.39111',	'139.06083'),
(11,	'埼玉県',	'35.85694',	'139.64889'),
(12,	'千葉県',	'35.60472',	'140.12333'),
(13,	'東京都',	'35.68944',	'139.69167'),
(14,	'神奈川県',	'35.44778',	'139.6425'),
(15,	'新潟県',	'37.90222',	'139.02361'),
(16,	'富山県',	'36.69528',	'137.21139'),
(17,	'石川県',	'36.59444',	'136.62556'),
(18,	'福井県',	'36.06528',	'136.22194'),
(19,	'山梨県',	'35.66389',	'138.56833'),
(20,	'長野県',	'36.65139',	'138.18111'),
(21,	'岐阜県',	'35.39111',	'136.72222'),
(22,	'静岡県',	'34.97694',	'138.38306'),
(23,	'愛知県',	'35.18028',	'136.90667'),
(24,	'三重県',	'34.73028',	'136.50861'),
(25,	'滋賀県',	'35.00444',	'135.86833'),
(26,	'京都府',	'35.02139',	'135.75556'),
(27,	'大阪府',	'34.68639',	'135.52'),
(28,	'兵庫県',	'34.69139',	'135.18306'),
(29,	'奈良県',	'34.68528',	'135.83278'),
(30,	'和歌山県',	'34.22611',	'135.1675'),
(31,	'鳥取県',	'35.50361',	'134.23833'),
(32,	'島根県',	'35.47222',	'133.05056'),
(33,	'岡山県',	'34.66167',	'133.935'),
(34,	'広島県',	'34.39639',	'132.45944'),
(35,	'山口県',	'34.18583',	'131.47139'),
(36,	'徳島県',	'34.06583',	'134.55944'),
(37,	'香川県',	'34.34028',	'134.04333'),
(38,	'愛媛県',	'33.84167',	'132.76611'),
(39,	'高知県',	'33.55972',	'133.53111'),
(40,	'福岡県',	'33.60639',	'130.41806'),
(41,	'佐賀県',	'33.24944',	'130.29889'),
(42,	'長崎県',	'32.74472',	'129.87361'),
(43,	'熊本県',	'32.78972',	'130.74167'),
(44,	'大分県',	'33.23806',	'131.6125'),
(45,	'宮崎県',	'31.91111',	'131.42389'),
(46,	'鹿児島県',	'31.56028',	'130.55806'),
(47,	'沖縄県',	'26.2125',	'127.68111');

 

その他

あとはサンプル通りにすればOK。見比べた感じだと県庁所在地のマップの方がしっくりきた。

 

参考

https://kariruno.com/center-todoufuken/
https://www.benricho.org/chimei/latlng_data.html

 - Google Maps API, Google

  関連記事

GoogleMapAPIのジオコードで存在するはずの住所が見つからない

GoogleMapAPIを利用したプログラムで確かに存在するはずの住所をジオコー ...

GoogleMapAPIでマップ自体を移動し中心地の経度緯度を取得

GoogleMapでマップ自体をドラッグして移動した後、中心地の経度緯度を取得し ...

GoogleMapAPIで現在地を更新する方法

GoogleMapAPIを使って現在地を取得してその場所にマーカーを設置、その後 ...

Google map APIでマーカー(アイコン)を好きな画像に変える

Googleマップでユーザーにマーカー画像をアップロードさせて、それをマップ表示 ...

GoogleMapAPIでヒートマップを表示する方法

GoogleMapAPIで花粉状況や雨量を可視化しやすいようなヒートマップ的なも ...

GASとGmailを連携させて受信メール検索及びメール送信

Google Apps ScriptとGmailを連携させてみたい。「未読かつ特 ...

GoogleMapでマーカーをまとめる

GoogleMapAPIでマーカーを複数表示し、近隣のエリアごとにまとめて表示さ ...

PHPで位置情報を取得してGoogleMapAPIで使用する方法

GPSみたいな位置情報をPHPで取得し、GoogleMapAPIでその場所を反映 ...

GoogleMapAPIでクリックした座標にマーカーを設置

GoogleMapAPIでクリックした位置にマーカーを設置し、座標の経度緯度をテ ...

GoogleMapAPIで住所・経度緯度入力後にマーカーを移動させる

フォーム内に住所・経度・緯度のテキストボックスを設置し、住所を入力後にボタンを押 ...