2015-04-20 20 views
5

Tôi mới đến r và đã cố gắng hàng giờ để vẽ điểm của một gia đình bướm trên bản đồ arizona. Tôi có thể làm hoàn toàn sai hoặc có một cái gì đó mất tích im không chắc chắn và giúp đỡ bất kỳ sẽ được đánh giá rất nhiều!Novice vẽ tọa độ trên bản đồ trong R với tệp csv

tôi có các mã sau đây bây giờ và đã thử nhiều người khác:

rio = read.csv("Rioninidae_Cleaned.csv",stringsAsFactors = FALSE) 
arizona <- get_googlemap(center=c(lon=-110.713,lat=31.815), zoom = 3) 
lon <-data.frame(rio$latitude) 
lat <-data.frame(rio$longitude) 
df <- as.data.frame(cbind(lon,lat)) 
df 
arizona <- get_googlemap(center = c(lon = -110.713,lat = 31.815), zoom = 3) 
ggmap(arizona) + 
    geom_point(data = df, aes(x = lon, y = lat), size = 5, shape = 21) + 
    guides(fill = FALSE, alpha = FALSE, size = FALSE) 

tập tin csv của tôi có thể được tìm thấy tại địa chỉ: https://www.dropbox.com/s/yxj1uvmt9bw8gvn/Rioninidae_Cleaned.csv?dl=0

 genus province   county latitude longitude 
1 Apodemia Arizona   Apache 33.90011 -109.5844 
2 Apodemia Arizona Cochise County 31.46260 -110.2895 
3 Apodemia Arizona Cochise County 31.46260 -110.2895 
4 Apodemia Arizona Santa Cruz 31.50503 -110.6547 
5  Emesis Arizona  Santa Cruz 31.74001 -110.9411 
6  Emesis Arizona  Santa Cruz 31.74001 -110.9411 
7  Emesis Arizona  Santa Cruz 31.38333 -111.0833 
8 Apodemia Arizona  Santa Cruz 31.38333 -111.0833 
9 Calephelis Arizona   Pima 31.76667 -111.5500 

Cảm ơn bạn!

Trả lời

7

Tôi đoán bạn có thể đang tìm kiếm nội dung như thế này.

library(ggmap) 
library(ggplot2) 

# Get a map 
arizona <- get_map(location = c(lon = -110.713, lat = 31.815), zoom = 6) 

ggmap(arizona) + 
geom_point(data = mydf, aes(x = longitude, y = latitude, fill = genus), size = 3, shape = 21) 

enter image description here

DỮ LIỆU

mydf <- structure(list(genus = structure(c(1L, 1L, 1L, 1L, 3L, 3L, 3L, 
1L, 2L), .Label = c("Apodemia", "Calephelis", "Emesis"), class = "factor"), 
province = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L 
), .Label = "Arizona", class = "factor"), county = structure(c(1L, 
2L, 2L, 5L, 4L, 4L, 4L, 4L, 3L), .Label = c("Apache", "Cochise County", 
"Pima", "Santa Cruz", "Santa Cruz "), class = "factor"), 
latitude = c(33.9001056, 31.4625978, 31.4625978, 31.5050272, 
31.7400056, 31.7400056, 31.38333333, 31.38333333, 31.76666667 
), longitude = c(-109.58444, -110.2895241, -110.2895241, 
-110.65472, -110.94111, -110.94111, -111.0833333, -111.0833333, 
-111.55)), .Names = c("genus", "province", "county", "latitude", 
"longitude"), class = "data.frame", row.names = c(NA, -9L)) 
+0

Có đó là chính xác nó! Cảm ơn bạn rất nhiều, tôi sẽ không bao giờ tìm ra lệnh cấu trúc đó! – poolshark

+0

@poolshark Niềm vui. Vui mừng khi nghe điều này là những gì bạn đang sau. :) – jazzurro

+0

Cảm ơn! Chỉ cần tự hỏi tôi sẽ làm gì nếu tôi có hơn 100 tọa độ cho một gia đình? Làm thế nào tôi có thể thay đổi cấu trúc? – poolshark

Các vấn đề liên quan