Nodejs、Mapnik、PostGIS for Leafletを使用したインタラクティブタイルの生成


8

私はこのようなことをしたいと思っいますが、同じサーバーにすべてのデータがあります。

私は一連のチュートリアル@ sparkgeo.com/labs/big/をたどっていますが、いくつか問題があります。最終的にLeafletはチュートリアル@ sparkgeo.com/labs/bigleaflet/のように動作させたいのですが、前のチュートリアルのバージョンも動作しません。したがって、最終バージョンでは、およびを使用しR ShinyLeaflet生成さPostgisれたを介してアクセスされたタイルからインタラクティブマップとレイヤーを生成します。node.jsmapnikmapbox

このWaxチュートリアルで使用したライブラリは削除されているので、これをインストールしましたHTMLファイル内のタイルhttp://localhost:8000/{z}/{x}/{y}.pngをポイントし、自分の場所をポイントしましたwax.g.min.jscencon.jsコードを実行しても国勢調査区は表示されません。ファイルのLeafletバージョンと同様HTMLに、レイヤーのローカルホストをポイントしましたが、レイヤーが表示されません。それらはPostGISデータベースに正常にロードされ、データベースのログイン情報を変更します。

わかりましたので、私はこれすべてに不慣れであり、明らかな何かを見逃しているのではないかと思っています。以前に述べた以外のコードは変更しませんでした。タイルを生成するために何か他に必要なことはありhttp://localhost:8000/{z}/{x}/{y}.pngますか?また、現在Waxは優先されていますが、より適切なチュートリアルへのリンクはありますmapboxか?


1
Chromeの開発者ツール(特に[ネットワーク]タブとコンソール)を開いて、エラーやタイムアウトがないか確認しましたか?
blah238 2014

うん、間違いなくGET http://localhost:8000/10/166/395.png net::ERR_CONNECTION_REFUSEDそうなる。テーブルをQGISにロードするのに永遠にかかるので、データベースが遅すぎるのではないかと思います。それらの設定を更新します。実際のURLで1つのタイルを参照するだけでは、何も得られません。
ideamotor 2014

ワックスGitHubリポジトリは引き続き利用可能です。BTW
blah238

ポインタをありがとう。それに続く人たちのために、「localhost」をサーバーのIPに変更することになりました。まだ問題に直面しています-タイルレイヤーは見えません。より迅速な解決策に取り組むためにこれをベッドに置いていますが、後で応答する可能性があります。
ideamotor

回答:


3

私が答えるのは少し時間がかかりますが、ここに行きます:

  • あなたが述べたようにワックスの使用は廃止されたので、ここにあなたが始めるためのいくつかのMapboxの例があります。念頭に置いてベアというリーフレットAPIは Mapbox.jsに埋め込まれているとMapboxコードと手をつないで使用することができます。

  • http://localhost:8000/{z}/{x}/{y}.pngタイルを自分のフォルダーに保存する手段を使用する。これは、ズームレベルが多すぎないようにする場合に適しています。そうしないと、コンピューターで非常に多くのタイルを管理するのが非常に難しくなります。まず自分自身でそれを明確にしたいと思うかもしれません。

  • Windows localhostでERR_CONNECTION_REFUSEDを取得し、によって宣言されたこれらのタイルにアクセスhttp://localhost:8000/{z}/{x}/{y}.pngする場合、jsソースがlocalhostフォルダー内ではなくリモートサーバー上にあることが問題である可能性があります。当然のことながら、コンピューターはインターネット上の信頼できないjsコードがコンピューターのコンテンツにアクセスすることを許可していません。

つまり、jsライブラリを次のように追加する代わりに、

<script src="http://mapbox.com/foo/bar/mapbox.js"></script>

... jsをlocalhostフォルダーにダウンロードし、これを使用します。

<script src="/mapbox.js"></script>

これで問題が解決しない場合は、ローカルホストサーバー(XAMPPなど)にファイルシステムにアクセスする権限があることを確認してください。

  • 単純なWebマップのために、同時にライブラリの使用量が多すぎると思います。TileMillは、最小限の労力でインタラクティブマップを作成するための優れたツールです。これをMapbox.jsとJavaScriptのスキルと組み合わせて、最初に提供した例のようにマップを作成できるようにします。

CSVまたは同様の形式で表示するデータがある場合は、すぐにTileMillを開始することをお勧めします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.