ドキュメントには頻繁に更新が加えられ、その都度公開されています。本ページの翻訳はまだ未完成な部分があることをご了承ください。最新の情報については、英語のドキュメンテーションをご参照ください。本ページの翻訳に問題がある場合はこちらまでご連絡ください。
記事のバージョン: GitHub.com

GitHub に geoJSON ファイルをマッピングする

GitHub は、GitHub リポジトリでの geoJSON および topoJSON マップ ファイルのレンダリングをサポートしています。 .geojson または .topojson 拡張子を使って、通常と同じようにファイルをコミットするだけです。 .json 拡張子の付いたファイルもサポートされますが、typeFeatureCollectionGeometryCollection、または topology に設定されている場合に限られます。 コミット後、GitHub.com で geoJSON ファイルのパスに移動してください。

右側にある紙アイコンをクリックすると、そのファイル ドキュメントに加えられた変更も、コミットの一部として表示されます。

ソースとレンダリングの切り替えのスクリーンショット

ジオメトリのタイプ

GitHub のマップは Leaflet.js を使用し、geoJSON の仕様 (Point、LineString、Polygon、MultiPoint、MultiLineString、MultiPolygon、GeometryCollection) に概要が示されているジオメトリのタイプをすべてサポートしています。 TopoJSON ファイルは "Topology" タイプで、topoJSON の仕様に従っている必要があります。

フィーチャーのスタイリング

GeoJSON オブジェクトのプロパティで追加のメタデータを渡すと、特定の色を指定する、説明アイコンを追加するなど、フィーチャーの表示方法をカスタマイズすることができます。 オプションは次のとおりです:

詳細は simplestyle 公開仕様のバージョン 1.1.0 を参照してください。

マップを他の場所に埋め込む

GeoJSON マップを GitHub 以外の場所で使用するには、 次のテンプレートを修正し、JavaScript をサポートしている任意の HTML ページに貼り付けてください (例: GitHub Pages)。

<script src="https://embed.github.com/view/geojson/<username>/<repo>/<ref>/<path_to_file>"></script>

たとえば、マップの URL が github.com/benbalter/dc-wifi-social/blob/master/bars.geojson であれば、埋め込みコードは次のようになります:

<script src="https://embed.github.com/view/geojson/benbalter/dc-wifi-social/master/bars.geojson"></script>

デフォルトでは、埋め込まれるマップのサイズは 420px x 620px ですが、最後のパラメータとして、?height=300&width=500 のように height 変数と width 変数 を渡せば、出力をカスタマイズすることができます。

ノートrefはブランチ(masterのような)にすることも、あるいはハッシュや個別のコミット(2391ae)にすることもできます。

クラスタリング

マップに大量のマーカー (およそ 750 以上) が設定されている場合、ズーム レベルが大きいときは近隣のマーカーが自動的にクラスタ化されます。 クラスタをクリックしてズームするだけで、個々のマーカーが表示されます。

基になるマップに問題がある

基になるマップ データ (通りの名前、道路など) は、編集可能な無料の世界地図をコラボレーションによって作るプロジェクト、OpenStreetMap を利用しています。 オープンソースなので、何か不具合に気づいた場合は、ぜひサインアップして修正をサブミットしてください。

トラブルシューティング

geoJSON ファイルのレンダリングに問題がある場合は、geoJSON 文法チェッカーでそのファイルを実行し、有効な geoJSON ファイルであることを確認してください。 ポイントが、意図しない場所 (**海の中など) にある場合、そのデータには、現在サポートされていない投影法が使われている可能性があります。 現在、GitHubでサポートされているのは urn:ogc:def:crs:OGC:1.3:CRS84 投影だけです。

また、10 MB を超えるような大きな .geojson ファイルは、ブラウザではレンダリングできません。 その場合は通常、次のようなメッセージが表示されます:

大きいファイル

その場合でも、.geojson ファイルを TopoJSON に変換すればデータをレンダリングできます。TopoJSONは、ファイルサイズを最大 80% まで縮小できる圧縮形式です。 ファイルを小さいチャンクに分割し (州ごと、年ごとなど)、データを複数のファイルとしてリポジトリに格納することは、もちろんいつでもできます。

他のリソース

担当者にお尋ねください

探しているものが見つからなかったでしょうか?

弊社にお問い合わせください