3

RパッケージRgooglemapsに問題があります。グーグルマップまたはオープンストリートマップから地図を取得できますが、PlotOnStaticMap関数が地図にプロットしたいデータと重複していません。代わりに、データをプロットする新しいグラフィカルデバイスを開きます。だから私は最終的に:

  • 取得したGoogleマップのみを含む作業ディレクトリに保存された画像
  • 私のデータが白い背景の上にプロットされたRグラフィックデバイスウィンドウ。

私はWindowsを使用しており、Rバージョン2.13.1とRGUIを使用しています。この問題は、コマンドラインからコードを実行した場合にも発生します。数か月前にRgooglemapsを使用したことを覚えていますが、それは適切に機能しました。その間にRバージョンをアップグレードしたので、バージョン関連の問題である可能性があります。

誰かがそれを試して、あなたが同じ問題(そしてそれを解決する方法)を持っているかどうか見ることができますか?

ここに問題を再現する例があります(http://www.r-bloggers.com/visualizing-gis-data-with-r-and-open-street-map/から取得)。この例では、googlemapsの代わりにOpen Street Mapを使用していますが、動作は同じです。コード:

require(RgoogleMaps)
lat_c<-51.47393
lon_c<-7.22667
bb<-qbbox(lat = c(lat_c[1]+0.01, lat_c[1]-0.01), lon = c(lon_c[1]+0.03, lon_c[1]-0.03))
OSM.map<-GetMap.OSM(lonR=bb$lonR, latR=bb$latR, scale = 20000, destfile="bochum.png")
image(OSM.map)
lat<- c(51.47393, 51.479021)
lon<- c(7.22667, 7.222526)
val <- c(0, 255)
lat_adj<-function(lat, map){(map$BBOX$ll[1]-lat)/(map$BBOX$ll[1]-map$BBOX$ur[1])}
lon_adj<-function(lon, map){(map$BBOX$ll[2]-lon)/(map$BBOX$ll[2]-map$BBOX$ur[2])}
PlotOnStaticMap(OSM.map, lat = lat_adj(lat, OSM.map), lon = lon_adj(lon, OSM.map),       
col=rgb(255,0, val,90,maxColorValue=255),pch=16,cex=4)
dev.print(jpeg,"test.jpeg", width=1204, height=644, units="px")
4

2 に答える 2

0

上記のコードを R2.14.0 で実行したところ、すべてが機能しているように見えます。

于 2011-11-30T18:30:58.103 に答える
0

私はあなたのコードを再実行しただけで、問題を調べてエラーメッセージを受け取りませんでした:

dev.print(jpeg,"test.jpeg", width=1204, height=644, units="px") windows 2 エラー: REAL() は「NULL」ではなく「数値」にのみ適用できます

于 2011-11-30T11:19:19.457 に答える