種の分布を示すポイントレイヤーがあります。
QGISで、このポイントレイヤーを、各セルの値がそのセル内のポイントの数に対応するラスターグリッドに変換することは可能ですか?
これまでは、グリッドセルに属性値をアタッチすることしかできませんでした。各グリッドセルの属性の合計を使用する方法があることを期待して、各ポイントの値が「1」である属性テーブルに列をすでに追加しています。
種の分布を示すポイントレイヤーがあります。
QGISで、このポイントレイヤーを、各セルの値がそのセル内のポイントの数に対応するラスターグリッドに変換することは可能ですか?
これまでは、グリッドセルに属性値をアタッチすることしかできませんでした。各グリッドセルの属性の合計を使用する方法があることを期待して、各ポイントの値が「1」である属性テーブルに列をすでに追加しています。
回答:
これは厄介ですが、機能します。ポイントからラスターに直接移動する方法がまだ見つかりません(ただし、誰かがここで解決策を提供することを期待しています!)。
点グリッドから始めます(Vector|Research tools|Random points
ツールからのセレンゲティのランダムな点):
希望するラスターと同じ範囲とセルサイズのポリゴングリッドを作成します(これはからVector|Research tools|Vector grid
)。
を使用Vector|Analysis tools|Points in polygon
し、ポリゴングリッドとポイントレイヤーを使用します。
これにより、新しいグリッドが作成されます(ここでは、各ポリゴンセルのポイント数によって色分けされています)。
これを使用Raster|Conversion|Rasterize
して、これをラスターに変換し、ラスター値にPNTCNT属性を使用し、グリッドに選択したのと同じセルサイズを使用します。
...各セルのポイントごとに値を持つラスターを与える:
最も簡単で簡単な方法:
これを自動的に行うには、スクリプトまたは処理モデルを自分で作成するか、QGIS Processing Toolboxでバッチ処理をx回クリックすることをお勧めします。編集:Rを使用できる場合は、ここから直接開始し、コードをニーズに合わせて調整します(分割されたポイントをループする)。
または、もう少し待ちます。私の自由な時間に私は現在QGIS(マクロ生態学的計算を扱う)のための新しいプラグインを書いている最中です、そしてそれはあなたが必要とするものと同様の機能を持っているかもしれません。
QGISでのサポートの欠如は、私が常に必要とする重要なジオプロセシングステップの1つであるため、非常に迷惑であることがわかりました。上記のように、フィッシュネットを介したラスタライズは、CPUを消費するベクトルベースの演算を実行するため、多数のデータポイント(たとえば100.000)がある場合は非常に遅くなります。さらに、フィッシュネットは滑らかなラスターレイヤーに比べてサイズが大きいです。
GDALには、この操作を最小限の処理時間で実行する機能がありますが、QGISには実装されていません(残念ながら)。ただし、環境と神経を守るために、コマンドラインまたは他のソフトウェア環境でgdal関数を使用できます。サーバー用のGDAL関連パッケージがあるRを使用することを好みます。Rでの方法は、Rの「gdal_rasterize」関数を使用したポリゴンのラスタライズで確認できます。