私は苦労している異常な課題を抱えています。誰かがこれに遭遇し、解決策を教えてくれることを願っています。
概要:
PostgreSQL や dbf ファイルを手動で変更せずに、動的にフィルタリングされた結果で mapnik + shapefiles を使用する方法を探しています。
詳細:
郵便番号で構成される地域を地図上に描画する必要があります。私の現在のソリューションは、MySQL データベースからポリゴンを取得し、実行時に Google マップに描画します。これは明らかに非常に遅いです。これを mapnik と互換性のあるソリューションに移行して、その場でタイルをレンダリングし、マップがより迅速に応答できるようにしたいと考えています。
シェープファイルの代わりに Postgres を使用すると言う前に、このサーバーには Postgres がありません。くどいですが、厳しい制限です。動的データ ソースは、mapnik がサポートしていない MySQL です。
もちろん、これらのテリトリーをオフラインで手動でレンダリングすることもできます (これにはたまたま TileMill を使用しています)。そのためには、OpenOffice でシェープファイルの dbf ファイルを操作する必要があります。そのためには、ZIP が地域内にあるかどうか、およびその地域に属しているかどうかを示す単純な列を追加します。次に、私の CartoCSS では、[INCLUDE="Y"] { ... } を探してポリゴンを描画または非表示にし、領域所有者の ID に基づいて単純な色を割り当てるだけです。これは非常に時間と労力がかかるという事実を除けば、問題はありません。
本当の問題は、クライアントが時々変化する 100 近くの地域を持っていることです。さらに悪いことに、それらが変更されると、波及効果が連鎖反応を引き起こし、隣接する領域が変更される可能性があります. さらに悪いことに、彼らはテリトリーの所有者が互いのテリトリーを見られることを望んでいません。
そのため、シェープファイルのフィルタリングを処理する自動化されたハイブリッド ソリューションを探しているので、領域が変わるたびに手動でやり直す必要はありません。
私の髪はこれで白髪になります。ソリューションが PostgreSQL やシェープファイルの dbf データベースの手動操作に依存しない限り、私はオプションを受け入れます。
どんな助けやアドバイスも大歓迎です。
ありがとう、スティーブ
TLDR: PostgreSQL または手動で dbf ファイルを変更せずに、動的にフィルタリングされた結果で mapnik + shapefiles を使用する必要があります