地理情報システム

地図製作者、地理学者、およびGIS専門家のためのQ&A


6
QGISでピクセル値を合計するにはどうすればよいですか?
ラスター内のすべてのピクセルの合計値を知る必要があります。ただし、[プロパティ]の[メタデータ]タブの[統計]セクションでは、[すべてのセルの合計]で常に0.00を示しています。私は役に立たないように異なるラスター形式で試してみました。何が悪いのですか?この値を取得するにはどうすればよいですか?

1
マップポイントを固定クラスターサイズにグループ化しますか?
約100のグループに分割したい緯度と経度の655ペアのデータセットがあります。グループには、互いに地理的に近い5〜10のペアが必要です。密なグループはより多くのポイントを持つべきであり、疎なグループはより少ないべきです。たとえば、都市のグループは大きく、地方のグループは小さくなければなりません。 この種のグループ化を行うための確立されたアルゴリズムはありますか、それとも最初からアルゴリズムを設計する必要がありますか? 私はgoogle maps v3 apiを使用してこのデータを表示していますが、これは固定データセットであるため、オフラインで数値を計算する準備ができています。

5
QGISはSpatialiteビューを読み取ることができますか?
作成したスペーシャルサイトデータベースには、数年分の犯罪データがあります。タイムスパンまたは返される犯罪の種類を単に制限するビューを導入することにより、ユーザーの操作を簡略化できる実際のシナリオを促進するために、QGISがこのビューをこのように読み取ることができるかどうかを知りたい私のデータベース内の他のどの空間テーブルもでしょう。ここでのポイントは、使用する可能性のあるすべての可能なビューに対して個別のテーブルを作成したくないことです。ユーザーにデータベースと適切なSQLを知らせてデータ自体をサブセット化する必要がないようにすることで、テーブルを単純化しようとしています。ArcGISの世界における同様のワークフローは、データベース(SQL Serverなど)にアクセスし、限られたデータセットのみを表示する、ユーザーがArcMapで開くことができる個別のレイヤーファイルを作成する場合があります。 データベースにビューを作成しましたが、QGISでspatialite dbに接続したときにインポートできるフィーチャクラスのリストに表示されません。たぶん、ビューは空間と見なされないのですか?(これについては後で詳しく説明しますが、すでに考えたので、結論を思い出せません。)いずれにしても、希望する種類のワークフローまたは同様のArcGISの代替案をどのように複製できるでしょうか。 ?
10 qgis  spatialite 

5
QGISでの作業をスピードアップする方法またはそれは遅いですか?
私は新しいQGISユーザーで、パフォーマンスがどれほど遅いか知りたいです。自分が思っている以上に質問している可能性があります。ここに、パフォーマンスが異常に遅いかどうかを評価するための関連情報があると思います。 QGISバージョン1.74 GDAL / OGRバージョン1.9.0 PostgreSQLクライアントバージョン9.1.2 QWTバージョン4.8.0 プロジェクト情報:リモートのPostGISデータベースからクエリを実行したポリゴンの1つのベクターレイヤー(クエリはシンプルで非常に高速)で、プロジェクトの定義済み座標空間(WGS 84)とグローブにまたがる合計160行を返します。これらの行を含むPostgreSQLテーブルは、130 KB未満のディスク領域を占有し、クエリされた行はテーブル全体を構成します。 システム:MacBook OS X 10.7.3、2.4GHz Intel Core Duo、4GB RAM。 パフォーマンス:レンダリングには5〜10分かかります。実際、変更には、単一のレイヤーの名前を変更することを含め、ほぼ同じ時間がかかります。それは本当に私を驚かせた。他のメモリを大量に消費するアプリケーションは、同時に実行されていません。 プロジェクトに少しでも変更を加えると、結果を評価する前に長時間待つ必要があるため、これはイライラします。また、アプリケーションは、要求したものを完了せずに単にクラッシュする場合があります。これは珍しいですか? 更新: 同じデータのシェープファイルがあります。それらは合計約100 MBの45ファイルです。この図は、元の投稿で説明したデータセットのサイズと明らかに矛盾しており、速度が遅くなります。 更新: QGISマップビューアの左下にある[レンダリング]ボタンを見つけました。以前は気付かなかったので少しばかげているように感じますが、レンダリングをオフにすると、即時の再レンダリングが重要ではないタスクを実行できる速度が大幅に向上します。他の新しいユーザーのために、ここでこれについて触れます。
10 qgis 

5
非常に詳細な陸域シェープファイルから海洋シェープファイルを取得するにはどうすればよいですか?
シェープファイルを「反転」する可能性を探しています。私がしたいことは、大陸と島のあるシェープファイルを水のポリゴンを持つシェープファイルに変換することです。Natural Earthの既存の海洋シェープファイルは不正確です。 私はアクティブなOSM寄稿者として、OSMの既存のシェープファイルを使用することでうまくいくと思いました。これらははるかに正確ですが、GISの観点からは非常にバグがあります。しかし、mapserverはそれを処理できるので、これらは問題ないはずだと思いました。これらのシェープファイルは、http://metro.teczno.com/#coastlineで見つけることができます が、非常に大きいものもあります。 ワールドバウンド(-180〜180、-90〜90)を持つ1つのポリゴンでシェープファイルを作成しました。次に、陸域が他のシェープファイルにある世界境界シェープファイルから領域を切り取ろうとしました。QGIS、ベクターツール->差分関数で試してみました。100%のCPU使用率で12時間後、私はそれを停止しました。常に100%の進行状況を表示しました。RAMは問題ではありませんでした。 「世界のポリゴン」、できればLinuxコマンドラインから陸地を切り取る別の可能性を探しています。

1
さまざまな投影法でPostGISラスターデータを管理するにはどうすればよいですか?
私は、サンプルの長方形の配列、つまりラスターイメージとして収集された考古学的地球物理学データを保存および管理する必要があります。 各ラスターは通常、20x20または30x30の浮動小数点サンプルで、通常1m間隔でサンプリングされます。 調査は、特定の場所にあるこれらの1つ以上の画像で構成されます。 2つの異なる調査が異なる国または異なる予測を使用する地域で行われる可能性がありますが、各調査は1つだけの予測を使用します。 これらは一緒に表示される可能性は低く、通常、各調査は単独で行われます。 データはカスタムのフロントエンドによってのみアクセスされるため、ユーザーがデータを直接制御することなどはありませんpsql。 各サンプルは収集されたとおりに保存する必要があるため、1つのサンプルが元の投影よりも多かれ少なかれカバーする可能性があり、分析を実行する必要があるため、Webメルカトルなどの一般的なCRSに再投影することはできません。データについて。 PostGIS Rasterデータベースにデータを保存するにはどうすればよいですか?私が思いついたオプションは次のとおりです。 SRID制約を無視し、すべてのデータを1つのテーブルに格納して、一貫した方法でデータを操作するためのフロントエンドコードを記述します。 すべてのデータを1つのテーブルに保存し、SRID制約をSRIDと調査IDの複合として書き換えます。 テーブルの継承により、新しいSRIDごとに新しいテーブルを作成します。 テーブルの継承により、調査ごとに新しいテーブルを作成します。 1と2はPostGISの自動化された優れた部分のいくつかを壊しますが、そうでなければフロントエンドコードに隠されます。しかし、クエリはおそらく少し長くかかります。 3と4は、テーブルの爆発で終わり、FK制約の管理などが困難になる可能性があります。 実際には、調査ごとのラスタの数は1〜100以上であり、調査の数は数百に達する可能性があります。しかし、明確な予測の数は非常に少ないままである可​​能性が高く、3が有利です。
10 postgis  raster 

5
プログラムでArcGISのメタデータを編集/更新しますか?
ArcGIS 10でメタデータをプログラムで更新することに成功した人はいますか?Python / arcpyの使用を検討しますが、ArcObjects(C#またはPython / comtypes)も可能です。 FGDCとArcGIS-ISO形式のメタデータの両方を更新する必要があります。使用するソリューションでは、競合している場合を除いて、既存の(非空白の)要素と追加された要素を保持できる必要があります。追加された要素は既存の要素を上書きします。

6
「Available Sky」実装の模索
「Available Sky」というアルゴリズムの実装を探しています。ArcGIS(Spatial AnalystまたはGRID)が推奨されますが、GDAL、SAGA GIS、またはその他のソリューションが完全に受け入れられます。 私の説明は、「利用可能な空」という変数を作成して、GPSラジオカラーのパフォーマンスに対する地形の影響を定量化する方法です(Rodgers et ASal。1997 )... は、直線でGPSラジオカラーが利用できる空の割合です地形障害のないすべての方向およびすべての角度でのサイトの面積(森林被覆を無視)。...山頂の場所はAS値が高い...反対に、両側の山の尾根により谷底の場所は低い[側方障害物] " - 「山岳地形におけるGPS無線テレメトリエラーとバイアス」から言い換え、ロバートG.デオン、ロバートセルーヤ、グラハムスミス、クリストファーO.コチャンニー; Wildlife Society Bulletin 2002。 このペーパーでは、ベース標高モデルを、デムの最高点より100m高い粗い「スカイ」ラスターセットと比較するプロセスの概要のみを説明します。プロセスは、各デムポイントから各スカイポイントへの直接の見通し線を計算することです。ある値に到達すると、ASその場所から見えるスカイポイントの総数の比率になります。

3
信号機、一時停止標識、およびその他の標識資産/在庫のデータはどこで入手できますか?
私は道路を含むプロジェクトに取り組んでいます。サービスの品質は、特定の道路が連続しているかどうか、または一時停止の標識、信号機などの運転手に影響を与えるものによって分割されているかどうかを知ることでメリットを得られます。 私はオンラインでぐるぐる回っているものを見つけていません。私も地方自治体に連絡しましたが、彼らは都市プロジェクトのデータへのアクセスのみを許可しています。ほとんどの地域には同様のルールがあると思います。 私を助けることができる公的または商業的な別のソースはありますか?または私は運が悪いですか? 編集-私は米国でデータを探していることに注意してください。
10 data 

4
QGISのジオメトリジェネレーターを使用して、他のフィーチャと一致しないポリゴンアウトラインをシンボル化しますか?
ポリゴンをラインに変換せずにシンボル化したいのですが。海岸線(青い線)の上部と下部に一致するポリゴンフィーチャ(赤い線でハッチングおよび境界が設定されています)があります。ポリゴンの輪郭を2辺だけでシンボル化し、上部と下部の赤い色を削除したいと思います。 このような最終結果を見たいのですが。

1
シェープファイルを小さなシェープファイルに分割します
非常に大きなシェープファイル(RIのすべての道路)があります。Pythonで複数のワーカースレッドを使用してファイルを処理できるように、ファイルをチャンクに分割する必要があります。これまでのところ、ベクターデータにオーバーレイされるグリッドをQGISで作成しました。次に、グリッドとシェープファイルを使用して交差アルゴリズムを実行し、ベクトルが分割されて、'id'それらが含まれるボックスにが割り当てられるようにしました。 今、グリッドの特定のボックス内のすべてのベクトルはすべて同じな'id'ので、それらを抽出して独自のシェープファイルに自動的に保存できますか?ですべてのベクトルを選択し、'id'それらを独自のレイヤーにコピーしてからそのレイヤーを保存することは承知していますが、ボックス/ IDが多すぎるため、それぞれをオフに保存するには永久に時間がかかります。QGISを使用して、ID /ボックスごとに新しいシェープファイルを自動的に作成するにはどうすればよいですか? 基本的に、シェープファイル属性の特定のフィールドの個別の値ごとに新しいシェープファイルを作成します。 元のシェープファイル グリッド交差後のシェープファイル 同じbbox / idを共有するベクトルのセット
10 qgis  shapefile  vector 

2
クリッピングエラー1:カットラインポリゴンが無効です
このURLにあるサンプルファイルを使用してQGISを学習しました:https : //qgis.org/downloads/data/。 シェイプファイルをマスクとして使用してSR_50M_alaska_nad.tif(alaska.shp)をクリップしてみました。問題は私がこのエラーを受け取ったことです: 点またはその近くのリング自己交差。エラー1:カットラインポリゴンが無効です。 QGIS 2.18.9を使用して問題を解決するにはどうすればよいですか?

2
QGISで巨大なジオティフ(またはvrt)を表示しますか?
30mの解像度でグローバルラスタを操作および処理しています。合計ラスターサイズは通常[1,440,000 560,000]です。スーパーコンピューターにアクセスできるので、グローバルラスタを扱いやすいチャンクに分割し、いくつかの計算を並行して実行し、それらをディスクに非常に迅速に書き込むことができるコードを作成しました。 しかし、結果を表示することに関しては、壁にぶつかっています。私は通常、地球をカバーするタイルの仮想ラスターを作成し、それをQGISに取り込みます。しかし、それは信じられないほど遅いです(もしそうならロードするのに数分)。そして、パンまたはズームしようとすると、さらに数分かかります。この問題を解決するための最初のアプローチは、gdaladdoを使用して概要を作成することでした。ただし、これらのビルドには(日単位のように)永久にかかるため、アルゴリズムの開発には役立ちません。これが私が試したことのリストと、なぜ/どのように失敗したかです。 vrtの概要を構築します。上記のように、これは8つのレベルで完了するのに2日以上かかります。それは私の目的には受け入れられません。 個々のタイルの概要を作成し、概要を含むvrtに何らかの方法でマージします。タイルのオーバービューを比較的迅速に作成できます(スーパーコンピューター)が、それらを再マージすることはできません。私は試した: 2a。概要付きのタイルのgdal_merge。ただし、概要は出力tiffに保持されません(または少なくともQGISで認識されません)。 2b。概要付きのタイルでgdalbuildvrtを使用しましたが、上記のように、概要は保持されませんでした。[これは正しくありません。編集を参照してください。] 2c。レベル1〜6のタイルの構築概要とvrt(直接オプション2b)でレベル7〜8を直接構築するハイブリッドも試してみましたが、これら2つのレベルだけではまだ時間がかかります。いくつかのテストを行ったところ、タイルの概要が実際にvrtの概要を作成するために使用されていることがわかりましたが、vrtの概要を完了するにはまだ1日ほどかかります。 だから私はここに誰かが私が次にどこに行くべきかについていくつかの提案があることを願っています。ここに私が検討しているいくつかのオプションがあります: 手動でグローバルピラミッドを手動で作成します。それらを.ovrファイルに再結合するのは注意が必要です。 マップサーバー(ジオサーバー)を使用します。私はこれについてほとんど知りませんが、プロセスに複雑さを加えている間に時間のハードルを克服できないのではないかと心配しています。 大陸またはその他の地域によってドメインを分割します。私は本当にこのオプションを避けたいです。 「なぜ地球全体を30mの解像度で表示する必要があるのですか?」1つの例:私は水のピクセルのマスクを(全体的に)取り、それをスケルトン化して川を見つけ、測定を実行します。私のスケルトン化アルゴリズムは少しの調整が必要で(枝刈り、ループの削除、一般的なクリーニングなど)、出力は必ず30mです。川や景観は世界中で多様であるため、実装した変更の影響を確認するには、周囲をパンできる必要があります。 また、QGISを調べて、巨大なラスターをより速くレンダリングするために使用できる設定がないことを確認しましたが、何も表示されませんでした。SSDドライブを購入するのに足りないので、私はそれができるだけ速く動いていると思います。(私のHDDのI / Oは〜250MB / sです)。 個々のタイルで概要を作成し、次にvrtを作成しても概要が維持されていることがわかりました。ファイルのメタデータのQGISの「Pyramid」セクションは空ですが、「Dimensions」セクションには概要の各レベルのエントリがあります(X 720000、Y 140、X 360000、Y 70など)。だから私は2bについて間違っていました。 また、すべてのタイルをQGISにプルしただけでは1分未満でレンダリングされますが、タイルを参照するvrtをプルした場合は、5分以上かかります(処理する)。 SSDを搭載したコンピューターでいくつかのテストを行ったところ、グローバルなvrts(概要なし)を適切な速度で正常に読み込み、表示、レンダリングできることがわかりました。私のコンピューターでも同じことができることを期待して、1TB PCIe SSDを注文しました。結果で更新されます。

2
Mapnikは「空白」のタイルのみをレンダリングします
私は魅力的なGISの世界に慣れていないため、この数日間、トピック全体を調査してきました。私の目標は、自分のサーバーでOSMデータを使用して地球規模のマップを提供することです。 私のスタックは: Postgres + Postgis -GISデータの保存、変換、処理用。 Mapnik-タイルをレンダリングするためのライブラリ Tilestache-タイルの提供とキャッシュ Nginx -Tilestacheへのリバースプロキシ リーフレット(Slippyマップクライアント) OSMデータをインポートしてスタイルを設定するために、私は PBFファイル(抽出/プラネット) osm2pgsql CartoCSS openstreetmap-carto Kosmtik-開発/デバッグ用のマップGUI 完全な惑星ファイルは大きいので、私は現在、サンパウロの抽出を使用しています。これは、テストするのに十分な大きさです。 私が抱えている問題に到達する前に、これまでに行った手順を説明します。 うまくいったこと PostgreSQLとPostGISが正しくインストールされている。前者には9.6、後者には2.3を使用しています。postgis_topologyとのhstore拡張機能も追加しました。これらは後で使用します。 osm2pgsql 0.92.0がインストールされています。サンパウロ抽出物をインポートするために、私は使用します osm2pgsql -G U <user> -d <db> -C 1000 -W --hstore --style openstreetmap-carto.style --tag-transform-script openstreetmap-carto.lua <pbf> hstore、styleおよびtag-transform-scriptとして引数は、OSMのスタイルの適切な利用のために必要とされるここで説明します。 openstreetmap-cartoのインストールで説明したように、カスタムインデックスを追加し、必要なシェープファイルとフォントをダウンロードしました(絵文字を除く)。 QGISを使用して、抽出データがデータベースに正しくロードされていることを確認しました。すべてのポイント、ポリゴン、ライン、道路を表示してクエリを実行できました。それだけです。 問題 次のステップはタイルのレンダリングです。そこで問題が発生します。mapnikとpython-mapnik 3.x、carto 0.18.2があります。 OSMのproject.mmlから、を使用して独自のproject.xmlを生成しましたcarto。結果に次の変更を加えました。 Postgresのユーザ名(パラメータの追加userにMAPNIKのXMLを)。残りの接続情報は〜/ .pgpassから取得されます。 相対ディレクトリdata/<shape>.shpを/full/path/data/<shape>.shp 相対ディレクトリsymbols/<symbol>.svgを/full/path/symbols/<symbol>.svg …

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