QGISを使用してセルごとのポイントの頻度を示すラスターグリッドにポイントレイヤーを変換する


9

種の分布を示すポイントレイヤーがあります。

QGISで、このポイントレイヤーを、各セルの値がそのセル内のポイントの数に対応するラスターグリッドに変換することは可能ですか?

これまでは、グリッドセルに属性値をアタッチすることしかできませんでした。各グリッドセルの属性の合計を使用する方法があることを期待して、各ポイントの値が「1」である属性テーブルに列をすでに追加しています。


1
ロジックに関する簡単なメモ:グリッドセルごとに1の値を合計するだけの場合、この計算では種が既に追加されているかどうかがチェックされないため、豊かさ(これが計算したいものである場合)を過大評価している可能性があります。グリッドセルに。
Curlew 14

種の分布パターンがあり、観察された個体ごとに1ポイントです。集約をチェックして、種の分布をGISの基礎となる生息地にリンクしたいと考えています。現在、多くの点が上にあり、互いに非常に接近しているため、視覚化のために、このパターンを「単純化」し、セルごとに観測された個体の数を示すグリッドを使用したいと思います。私はこれが少し良く説明できれば幸いです。
マーフィー

回答:


10

これは厄介ですが、機能します。ポイントからラスターに直接移動する方法がまだ見つかりません(ただし、誰かがここで解決策を提供することを期待しています!)。

点グリッドから始めます(Vector|Research tools|Random pointsツールからのセレンゲティのランダムな点):

ここに画像の説明を入力してください

希望するラスターと同じ範囲とセルサイズのポリゴングリッドを作成します(これはからVector|Research tools|Vector grid)。

ここに画像の説明を入力してください

を使用Vector|Analysis tools|Points in polygonし、ポリゴングリッドとポイントレイヤーを使用します。

ここに画像の説明を入力してください

これにより、新しいグリッドが作成されます(ここでは、各ポリゴンセルのポイント数によって色分けされています)。

ここに画像の説明を入力してください

これを使用Raster|Conversion|Rasterizeして、これをラスターに変換し、ラスター値にPNTCNT属性を使用し、グリッドに選択したのと同じセルサイズを使用します。

ここに画像の説明を入力してください

...各セルのポイントごとに値を持つラスターを与える:

ここに画像の説明を入力してください


2

最も簡単で簡単な方法:

  • 一意のポイント識別子(種名)を持つ列があると仮定します
  • この属性でポイントレイヤーを分割します(QGIS->データ管理->分割)
  • たとえば、GDALラスタライズツール、または処理ツールボックスで使用可能なSAGAまたはGRASSツールを使用して、個々のポイントレイヤーをラスタライズします。同じセルサイズと結果の範囲を使用するようにしてください。
  • 生成されたすべてのラスターレイヤーを単純に合計します。たとえば、SAGA関数 "Grids sum"またはGRASS "r.sum"内。どちらの関数も、Processing Toolboxで使用できます。

これを自動的に行うには、スクリプトまたは処理モデルを自分で作成するか、QGIS Processing Toolboxでバッチ処理をx回クリックすることをお勧めします。編集:Rを使用できる場合は、ここから直接開始し、コードをニーズに合わせて調整します(分割されたポイントをループする)。
または、もう少し待ちます。私の自由な時間に私は現在QGIS(マクロ生態学的計算を扱う)のための新しいプラグインを書いている最中です、そしてそれはあなたが必要とするものと同様の機能を持っているかもしれません。


質問は単一の種のレイヤーに関連していると思います-ソリューションのために分割することはできません(分割するべきではありません)。OPには「ラスターセルのポイントの合計」ソリューションが必要です。
シンバマング2014

分割せずにそれを行うことができますが、これにはほぼ確実にループが必要であり、それぞれスクリプトによるソリューションが必要です。単一の種の場合、ソリューションはもちろん集約された発生密度を示すだけなので、ソリューションは機能しています。
Curlew 2014

-2

QGISでのサポートの欠如は、私が常に必要とする重要なジオプロセシングステップの1つであるため、非常に迷惑であることがわかりました。上記のように、フィッシュネットを介したラスタライズは、CPUを消費するベクトルベースの演算を実行するため、多数のデータポイント(たとえば100.000)がある場合は非常に遅くなります。さらに、フィッシュネットは滑らかなラスターレイヤーに比べてサイズが大きいです。

GDALには、この操作を最小限の処理時間で実行する機能がありますが、QGISには実装されていません(残念ながら)。ただし、環境と神経を守るために、コマンドラインまたは他のソフトウェア環境でgdal関数を使用できます。サーバー用のGDAL関連パッケージがあるRを使用することを好みます。Rでの方法は、Rの「gdal_rasterize」関数を使用したポリゴンのラスタライズで確認できます。

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