2

私は RgoogleMaps パッケージを初めて使用し、正確な半径で円をマップに含めようとしています。これが私の現在のコードです:

library(RgoogleMaps)
data <- read.csv("test.csv", header = TRUE, sep = ",", quote = "\"",
                  dec = ".", fill = TRUE, comment.char = "")

lat <- data$Latitude
lon <- data$Longitude

PlotOnStaticMap(lat = lat, lon = lon, zoom = 10, maptype ="satellite",
                size = c(480, 480), cex = 0.2, pch = 19, col = "red", FUN = points, add = F)

ここでは、各「座標点」、つまりマップ上の各点が緯度と経度の情報を持つ「データ」データフレームから取得されるため、「座標点」を中心に半径 2 マイルの円を描きたいと考えています。したがって、緯度と経度の情報を含むデータ フレームに 10 行ある場合、各行を中心として半径 2 マイルの円を 10 個描画します。これを行うことは可能ですか?RgoogleMaps パッケージにこの機能はありますか? そうでない場合、これを実行できる他のパッケージはありますか?

左下隅と右上隅の緯度と経度 ($BBOX$ll と $BBOX$ur) を使用し、この情報をマップのサイズ $size 480 480 と組み合わせて、cex 値を決定することを考えています。 2マイルのポイント. しかし、もっと簡単な方法があれば、本当に感謝しています。

ありがとうございました。

それで

4

1 に答える 1

0

1 つの可能性 (プロット内の円が表面上の円に十分に近い (平面への射影によって大きく歪まない) スケールである限り) my.symbolsTeachingDemos パッケージの関数を使用して円をプロットすることです。引き続き RgoogleMaps パッケージを使用して地図をダウンロードしてプロットし、地図の地域の緯度または経度で 2/10 マイルがどのくらい離れているかを計算します。次にmy.symbolsxsizeまたはysize引数を適切な経度または緯度に設定して使用できます (円を近似するために多数の辺で ms.polygon 関数を使用できます)。

于 2014-07-05T17:31:16.573 に答える