0

私が素朴であることを許してください。SGDF の再投影に問題があります。

xyz (x=経度、y=緯度、z=値) の 3 列のデータセットがあります。経度と緯度の値は、EPSG:3035 形式の座標です。データ フレームを EPSG:3035 で投影された 5 km * 5 km の空間解像度を持つグリッドに変換しました。0.05*0.05 の空間解像度でグリッドを EPSG:4326 に再投影したいと考えています。ただし、次の警告メッセージが表示されます。

Warning messages:
1: In spTransform(radon, CRS("+init=epsg:4326")) :   Grid warping not available, coercing to points
2: In spTransform(as(x, "SpatialPixelsDataFrame"), CRSobj, ...) :   Grid warping not available, coercing to points

グリッドを再投影する方法を教えてください。以下は、再現可能な小さな例です。

library(sp)
library(rgdal)
library(raster)

x=c(5013500, 5018500, 4883500, 4888500, 4893500, 4898500, 4908500,4948500, 4953500, 4958500, 4963500, 4973500, 4978500, 4988500, 5008500, 5013500, 5028500, 4878500, 4883500, 4888500, 4893500,4898500, 4903500,4928500, 4963500, 4968500, 4973500, 4978500, 4983500, 4988500)

y=c(5395500, 5395500, 5390500, 5390500, 5390500, 5390500, 5390500,5390500, 5390500, 5390500, 5390500, 5390500, 5390500, 5390500, 5390500,5390500, 5390500, 5385500, 5385500, 5385500, 5385500, 5385500, 5385500,5385500, 5385500, 5385500, 5385500, 5385500, 5385500, 5385500)

z=c(1.74, 1.74, 1.82, 1.82, 1.82, 1.81, 1.81, 1.78, 1.77, 1.77, 1.76,1.76, 1.75, 1.74, 1.73, 1.73, 1.72, 1.82, 1.82, 1.81, 1.81, 1.80, 1.80, 1.78, 1.75, 1.75, 1.74, 1.74, 1.73, 1.73)

df1=data.frame(x,y,z)
coordinates(df1) <- c("x", "y")
proj4string(df1)=CRS("+init=epsg:3035")
gridded(df1)=TRUE
fullgrid(df1)=TRUE

getGridTopology(df1)

                     x       y
cellcentre.offset 4878500 5385500
cellsize             5000    5000
cells.dim              31       3

newgrid = spTransform(df1, CRS("+init=epsg:4326"))

さて、Paul のおかげで、gdalwarpを使用してグリッドを再投影することができました。それでも、空間解像度は異なります。

    Coordinates:
    min      max
x -31.34409 50.36650
y  34.07928 71.87206
Is projected: FALSE 
proj4string :
[+proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0]
Grid attributes:
       cellcentre.offset   cellsize cells.dim
x         -31.31151 0.06515996      1254
y          34.11186 0.06515996       580
Data attributes:
Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
-0.11290  0.00000  0.00000  0.06136  0.00000  1.90300 

何かご意見は??

4

1 に答える 1

1

このメッセージが表示されるのは、再投影後、緯度経度の通常のグリッド上のポイントが、別の投影されたシステムの通常のグリッドではなくなったためです。多くの投影では、緯度経度と投影されたシステムの間の変化が一定ではないため、再投影ステップでは規則性が維持されません。したがって、歪みまたは変化は、ある領域では別の領域よりも大きく、不規則なグリッドにつながります。緯度経度のグリッドの正方形が、投影されたシステムで非正方形の形状になることを想像してみてください。

最も簡単な解決策は、最初にポイントをEPSG:4326に投影してから、補間ステップを実行することです。どの補間ルーチンを使用するかはわかりませんが、たとえばgstatは緯度経度での補間をサポートしていません。したがって、データを補間する前に、緯度経度ではなく投影システムに移動することは、常に安全な方法です。

本当にグリッドを再投影する必要がある場合は、何らかの補間を行う必要があります。2つのことを行います。そのようなツールを使用してgdalwarp、座標変換とそれに続く結果のグリッドのワーピングを実行できます。または、最近傍または任意の補間ルーチンを使用して、非正規グリッドを正規グリッドに補間することもできます。

于 2013-03-06T21:45:31.873 に答える