アノテーション付き地図
概要
これは、任意の地図画像にアノテーションを付けるJavaScriptのデモです。緯度経度を指定して地図にピンを立てて、ピンを選ぶとアノテーションが表示されるようにできます。ピンをクリックするとアノテーションがピン留めされて表示されたままになります。
アノテーションのデータはCSVかMarkdownかJSON形式でHTML内に埋め込みます。各アノテーションのレコードは、緯度と経度と表示内容を属性として持ちます。地図はメルカトル図法のものであれば何でも使えます。地図の左上端の緯度経度と右下端の緯度経度を指定することにより、各アノテーションの緯度経度と照合してピンの座標を決定できるようにします。
詳しい利用方法は、このページのソースを見れば分かるはずです。要点は以下です。
- mapannotation.jsというJavaScriptファイルを読み込む。
- mapannotation.cssというCSSファイルを読み込む。
- CSVかMarkdownかJSONのアノテーションデータを非表示要素として埋め込む
- 地図画像を置く。onload属性でrenderMapAnnotations関数を呼ぶ。
- 地図の親要素に地図の右上と左下の地点の緯度経度を指定する。
上記スクリプトはMITライセンスに基づくオープンソースコードとして公開しますので、適当にコピーして使ってください。CSSをいじればピンやアノテーションの表現方法を変えるのも容易でしょう。
このページに置かれた地図はOpenStreetMapのデータですので、それらを無許可で転載して使っても大丈夫です。OpenStreetMapの画面をスクリーンキャプチャすれば、どの地方の地図でも使えるようになります。右上と左下の緯度経度を調べるには、Googleマップで右クリックするのが楽です。
CSVのアノテーションデータ
アノテーションのデータはHTMLの非表示要素の内容として記述します。最も単純なのはCSV形式です。
45.5231,141.9360,宗谷岬,日本最北端の岬だべさ。,img/souya.jpg
38.2682,140.8694,仙台市,牛タンがんめぇんだっちゃ。
35.6895,139.6917,東京都,将軍様のお膝元だよ。,img/tokyo.jpg,https://en.wikipedia.org/wiki/Tokyo,hotspot
34.6864,135.5197,大阪府,天下の台所やで。,img/osaka.jpg img/amemura.jpg
30.9956,130.6644,佐多岬,本土最南端の岬ばい。,img/sata.jpg
40%,30%,日本海,アジア大陸と日本列島に囲まれた縁海
Markdownのアノテーションデータ
アノテーションのデータはMarkdownの表形式で表現することもできます。
|45.5231|141.9360|宗谷岬|日本最北端の岬だべさ。|img/souya.jpg
|38.2682|140.8694|仙台市|牛タンがんめぇんだっちゃ。
|35.6895|139.6917|東京都|将軍様のお膝元だよ。|img/tokyo.jpg|https://en.wikipedia.org/wiki/Tokyo|hotspot
|34.6864|135.5197|大阪府|天下の台所やで。|img/osaka.jpg img/amemura.jpg
|30.9956|130.6644|佐多岬|本土最南端の岬ばい。|img/sata.jpg
|40%|30%|日本海|アジア大陸と日本列島に囲まれた縁海
JSONのアノテーションデータ
仙台市
牛タンがんめぇんだっちゃ。
んでまず。
"
},
{
"latitude": 35.6895, "longitude": 139.6917, "label": "東京都",
"text": "将軍様のお膝元だよ", "images": ["img/tokyo.jpg"],
"links": ["https://en.wikipedia.org/wiki/Tokyo,hotspot"],
"style": "hotspot"
},
{
"latitude": 34.6864, "longitude": 135.5197, "label": "大阪府",
"text": "天下の台所やで", "images": ["img/osaka.jpg", "img/amemura.jpg"]
},
{
"latitude": 30.9956, "longitude": 130.6644, "label": "佐多岬",
"text": "本土最南端の岬ばい", "images": ["img/sata.jpg"]
},
{
"yratio": 0.4, "xratio": 0.3, "label": "日本海",
"text": "アジア大陸と日本列島に囲まれた縁海"
}
]
]]>
日本全土の地図と都道府県庁所在地
|43.06417|141.34694|北海道|広大な自然と寒冷な気候で知られる日本最北の都道府県です。||https://www.pref.hokkaido.lg.jp/
|40.82444|140.74000|青森県|りんごの生産量が日本一で、ねぶた祭りが有名です。||https://www.pref.aomori.lg.jp/
|39.70361|141.15250|岩手県|面積が日本一広く、自然豊かな風景が広がります。||https://www.pref.iwate.jp/
|38.26889|140.87194|宮城県|仙台市を中心に発展し、七夕祭りが有名です。||https://www.pref.miyagi.jp/
|39.71861|140.10250|秋田県|なまはげなど独特の伝統文化が息づく地域です。||https://www.pref.akita.lg.jp/
|38.24056|140.36333|山形県|さくらんぼの生産が盛んで、温泉地も多く存在します。||https://www.pref.yamagata.jp/
|37.75000|140.46778|福島県|会津地方の歴史と自然が豊かな県です。||https://www.pref.fukushima.lg.jp/
|36.34139|140.44667|茨城県|水戸納豆や偕楽園で知られる県です。||https://www.pref.ibaraki.jp/
|36.56583|139.88361|栃木県|日光東照宮や餃子で有名な県です。||https://www.pref.tochigi.lg.jp/
|36.39111|139.06083|群馬県|草津温泉など名湯が多く存在します。||https://www.pref.gunma.jp/
|35.85694|139.64889|埼玉県|東京の北に位置し、ベッドタウンとして発展しています。||https://www.pref.saitama.lg.jp/
|35.60472|140.12333|千葉県|東京ディズニーリゾートや成田空港がある県です。||https://www.pref.chiba.lg.jp/
|35.68944|139.69167|東京都|日本の首都であり、政治・経済の中心地です。||https://www.metro.tokyo.lg.jp/|hotspot
|35.44778|139.64250|神奈川県|横浜や鎌倉など観光地が多く存在します。||https://www.pref.kanagawa.jp/
|37.90222|139.02361|新潟県|米どころとして知られ、雪深い地域です。||https://www.pref.niigata.lg.jp/
|36.69528|137.21139|富山県|立山連峰の美しい景観が広がる県です。||https://www.pref.toyama.jp/
|36.59444|136.62556|石川県|金沢市を中心に伝統文化が息づいています。||https://www.pref.ishikawa.lg.jp/
|36.06528|136.22194|福井県|恐竜博物館や越前ガニで有名です。||https://www.pref.fukui.lg.jp/
|35.66389|138.56833|山梨県|富士山の北側に位置し、ワイン生産が盛んです。||https://www.pref.yamanashi.jp/
|36.65139|138.18111|長野県|日本アルプスがあり、避暑地として人気です。||https://www.pref.nagano.lg.jp/
|35.39111|136.72222|岐阜県|飛騨高山など歴史的な町並みが残る県です。||https://www.pref.gifu.lg.jp/
|34.97694|138.38306|静岡県|富士山の南側に位置し、お茶の生産が盛んです。||https://www.pref.shizuoka.jp/
|35.18028|136.90667|愛知県|名古屋市を中心に工業が発展しています。||https://www.pref.aichi.jp/
|34.73028|136.50861|三重県|伊勢神宮や松阪牛で知られる県です。||https://www.pref.mie.lg.jp/
|35.00444|135.86833|滋賀県|琵琶湖を中心に自然が豊かな地域です。||https://www.pref.shiga.lg.jp/
|35.02139|135.75556|京都府|千年の都として歴史と文化が息づく街です。||https://www.pref.kyoto.jp/
|34.68639|135.52000|大阪府|食文化が豊かで、日本有数の商業都市です。||https://www.pref.osaka.lg.jp/
|34.69139|135.18306|兵庫県|神戸を中心に港町として発展しています。||https://www.pref.hyogo.lg.jp/
|34.68528|135.83278|奈良県|東大寺や法隆寺など古都の文化が残る街です。||https://www.pref.nara.jp/
|34.22611|135.16750|和歌山県|紀伊半島に広がる豊かな自然が特徴です。||https://www.pref.wakayama.lg.jp/
|35.50361|134.23833|鳥取県|鳥取砂丘がある日本で最も人口が少ない県です。||https://www.pref.tottori.lg.jp/
|35.47222|133.05056|島根県|出雲大社など神話のふるさととして有名です。||https://www.pref.shimane.lg.jp/
|34.66167|133.93500|岡山県|桃太郎伝説とフルーツが名物の県です。||https://www.pref.okayama.lg.jp/
|34.39639|132.45944|広島県|原爆ドームや厳島神社など世界遺産がある県です。||https://www.pref.hiroshima.lg.jp/
|34.18611|131.47028|山口県|本州最西端に位置し、ふぐ料理が有名です。||https://www.pref.yamaguchi.lg.jp/
|34.06583|134.55944|徳島県|阿波おどりが有名で、四国の玄関口です。||https://www.pref.tokushima.lg.jp/
|34.34028|134.04333|香川県|うどん県として知られ、日本一小さい県です。||https://www.pref.kagawa.lg.jp/
|33.84167|132.76611|愛媛県|道後温泉など歴史ある温泉地が有名です。||https://www.pref.ehime.jp/
|33.55972|133.53111|高知県|坂本龍馬ゆかりの地で、自然豊かな県です。||https://www.pref.kochi.lg.jp/
|33.60639|130.41806|福岡県|博多ラーメンや屋台文化が人気の都市です。||https://www.pref.fukuoka.lg.jp/
|33.24944|130.29889|佐賀県|有田焼や嬉野温泉で知られる県です。||https://www.pref.saga.lg.jp/
|32.75028|129.87778|長崎県|異国文化が色濃く残る港町です。||https://www.pref.nagasaki.lg.jp/
|32.78972|130.74167|熊本県|熊本城や阿蘇山がシンボルの県です。||https://www.pref.kumamoto.jp/
|33.23806|131.61250|大分県|別府や湯布院など温泉地が豊富な県です。||https://www.pref.oita.lg.jp/
|31.91111|131.42389|宮崎県|南国ムードが漂い、マンゴーが名産です。||https://www.pref.miyazaki.lg.jp/
|31.56028|130.55806|鹿児島県|桜島を望む風光明媚な県です。||https://www.pref.kagoshima.jp/
|26.21250|127.68111|沖縄県|独自の文化と美しい海が広がる南国の楽園です。||https://www.pref.okinawa.jp/
東京23区
|35.6938|139.7530|千代田区|皇居や国会議事堂があり、日本の政治の中心地です。||https://www.city.chiyoda.lg.jp/
|35.6704|139.7720|中央区|銀座や日本橋など商業の中心地で、歴史と現代が融合しています。||https://www.city.chuo.lg.jp/
|35.6581|139.7516|港区|東京タワーや高級住宅街があり、国際的な企業も多く集まるエリアです。||https://www.city.minato.tokyo.jp/
|35.6938|139.7036|新宿区|新宿駅周辺の繁華街や高層ビル群が特徴で、多文化が共存しています。||https://www.city.shinjuku.lg.jp/
|35.7081|139.7528|文京区|東京大学など教育機関が多く、緑豊かな文教地区です。||https://www.city.bunkyo.lg.jp/
|35.7123|139.7760|台東区|上野や浅草など、伝統文化と下町情緒が残る地域です。||https://www.city.taito.lg.jp/
|35.7100|139.8016|墨田区|東京スカイツリーがあり、伝統工芸と現代文化が融合しています。||https://www.city.sumida.lg.jp/
|35.6735|139.8174|江東区|臨海部の開発が進み、豊洲市場やお台場などがある活気あるエリアです。||https://www.city.koto.lg.jp/
|35.6090|139.7300|品川区|品川駅を中心にビジネスと住宅が調和した利便性の高い地域です。||https://www.city.shinagawa.tokyo.jp/
|35.6411|139.6984|目黒区|洗練されたカフェやショップが立ち並ぶ、おしゃれな住宅街です。||https://www.city.meguro.tokyo.jp/
|35.5614|139.7160|大田区|羽田空港を擁し、中小企業の工業地帯としても知られています。||https://www.city.ota.tokyo.jp/
|35.6466|139.6533|世田谷区|最も人口が多い区で、住宅地が広がり緑も豊かです。||https://www.city.setagaya.lg.jp/
|35.6640|139.6982|渋谷区|若者文化の発信地であり、IT企業も多く集まるトレンドの最先端です。||https://www.city.shibuya.tokyo.jp/
|35.7074|139.6658|中野区|サブカルチャーの聖地として知られ、多様な文化が共存しています。||https://www.city.tokyo-nakano.lg.jp/
|35.6995|139.6368|杉並区|閑静な住宅街が広がり、アニメ制作会社が多いことでも有名です。||https://www.city.suginami.tokyo.jp/
|35.7285|139.7107|豊島区|池袋を中心に商業施設が集まり、国際色豊かな地域です。||https://www.city.toshima.lg.jp/
|35.7520|139.7337|北区|自然と都市が調和し、多くの公園や歴史的建造物があります。||https://www.city.kita.tokyo.jp/
|35.7365|139.7830|荒川区|下町の雰囲気が残り、職人の技が息づく伝統的な地域です。||https://www.city.arakawa.tokyo.jp/
|35.7512|139.7101|板橋区|商業と住宅が混在し、都心へのアクセスも良好なエリアです。||https://www.city.itabashi.tokyo.jp/
|35.7356|139.6527|練馬区|緑が多く、農地も残る自然豊かな住宅地域です。||https://www.city.nerima.tokyo.jp/
|35.7750|139.8047|足立区|多様な文化が交わり、下町の情緒と新しい開発が進む地域です。||https://www.city.adachi.tokyo.jp/
|35.7433|139.8477|葛飾区|下町の風情が色濃く残り、映画や漫画の舞台としても知られています。||https://www.city.katsushika.lg.jp/
|35.7064|139.8680|江戸川区|川や公園が多く、家族連れに人気の住宅エリアです。||https://www.city.edogawa.tokyo.jp/
グリッド画像
格子状に画像を並べて表示する機能もあります。ラベルで整理されたたくさんの画像を表示する際に役立ちます。
画像のリストはCSVかマークダウンかJSON形式でHTMLの中に埋め込みます。各々のレコードは、ラベルと画像のリストと省略可能なコメントからなります。同じレコードの画像は同じ小部屋に表示されます。
詳しい利用方法は、このページのソースを見れば分かるはずです。要点は以下です。
- mapannotation.jsというJavaScriptファイルを読み込む。
- mapannotation.cssというCSSファイルを読み込む。
- CSVかMarkdownかJSONの画像リストを非表示要素として埋め込む
- グリッド画像が表示される場所となるブロック要素を置く。
- script要素を置いてrenderGridImages関数を呼び出す。
Markdownの画像リスト
|アメリカ村|img/amemura.jpg|若者文化の発信地
|ブロンプトン|img/bro01.jpg,img/bro02.jpg|折り畳み自転車の部品
|長野生活|img/nagano01.jpg,img/nagano02.jpg,img/nagano03.jpg,img/nagano04.jpg,img/nagano05.jpg|庭の草を燃やしているところ
|夜景|img/night01.jpg,img/night02.jpg,img/night03.jpg|夜の東京
|大阪|img/osaka.jpg|天下の台所
|東京|img/tokyo.jpg|将軍様のお膝元
|佐多岬|img/sata.jpg|本土最南端
|宗谷岬|img/souya.jpg|日本最北端
|所沢|img/tokoro01.jpg,img/tokoro02.jpg,img/tokoro03.jpg,img/tokoro04.jpg|航空発祥の地
|ワンイチ|img/wan01.jpg,img/wan02.jpg,img/wan03.jpg|チャリで東京湾を一周すること
|体重測定|img/weight01.jpg,img/weight02.jpg|前後荷重を調べている
|日常1|img/misc01.jpg,img/misc02.jpg
|日常2|img/misc03.jpg,img/misc05.jpg,img/misc06.jpg
|日常3|img/misc07.jpg,img/misc08.jpg,img/misc09.jpg,img/misc10.jpg
|日常4|img/misc11.jpg
|日常5|img/misc12.jpg,img/misc13.jpg
JSONの画像リスト