2017-08-16 10 views
0

ggmapとgeom_pointを使用して、マップ上に緯度/経度のポイントをプロットしようとしています。私はそれを前にやったことがありますが、何の問題もありませんでしたが、今度はそれが表示されません。私はデータをリストから外してみることを試みた、aes()などで微妙に変化しています。 point_mapの出力はポイントがないArea_Mapのみです。私はここで何が欠けていますか?geom_pointがggmapプロットに表示されない

# Read in data from csv files. 
bearingDat <- read.csv('bearing_Data.csv', sep = ',') 

lonlatDat <- read.csv('lonlat_Data.csv', sep = ',') 

# Create vectors for data. 
bearing <- c(bearingDat[1]) 
longitude <- c(lonlatDat[2]) 
latitude <- c(lonlatDat[1]) 

# Install necessary packages. 
#install.packages("ggmap", "rworldmap") 
#library(ggmap) 
#library(rworldmap) 


# Acquire map of area. 
Area_Map <- ggmap(get_map(location = c(175.733095424,-39.278361404), 
           zoom = 18, 
           maptype = "satellite", 
           color = "color" 
) 
) 


point_map <- Area_Map + geom_point(data = lonlatDat, 
             aes(x=longitude, y=latitude), 
             col = "red", 
             size = 1, 
             alpha = 0.5, 
             na.rm = TRUE 
) 

point_map 

ここでは経度と緯度の最初の10個の値をそれぞれ示します。

1 175.4404 39.15582 
2 175.4404 39.22650 
3 175.4404 39.22650 
4 175.4404 39.22650 
5 175.4404 39.22650 
6 175.4404 39.22650 
7 175.4404 39.22650 
8 175.4404 39.22650 
9 175.4403 39.42777 
10 175.4403 39.42777 
+0

サインエラーの他に、「データ用ベクトルを作成する」コードが悪い(プロット内のコードを使用しない)。 'bearingDat'がデータフレームの場合、' bearingDat [1] 'は' c(bearingDat [1]) 'と同様に1列のデータフレームです。 * vector *が必要な場合は、 'bearingDat [[1]]'を使います。 ( 'c()'はどちらの場合も無意味です)。 – Gregor

+0

@Gregorそれを指摘していただきありがとうございます。最近Rと一緒に過ごしたことがないので、いくつかのものが混ざっているはずです。 – wastelander

答えて

2

マップは-39.278361404で、ポイントは39.15582にあり、世界の反対側にあります。

いずれかを修正すると、何かが表示されることがあります。私の腸の本能は、あなたのズームレベルの範囲外であるかもしれないと私に伝えます。

calc_zoom(lon, lat, data, adjust = 0, f = 0.05)

をあなたの元のマップから最も遠い地点を示し、あなたが行くように良いことがありますズームレベルを取得するには:

を使用してみてください。

+0

ああ、NZTM - > UTMに変換したときに私の緯度/経度データが混乱してしまったのだろうか?ありがとうございました。 – wastelander

+0

これは非常に簡単に起こります。私の最初のリーフレットマップには、同様の変換問題がありました。 – sconfluentus

+0

私はcalc_zoomを試しましたが、 "エラー:is.integer(調整)が真ではありません"というエラーが表示されます。 – wastelander

関連する問題