library(ggplot2)
library(dplyr)
library(ggmap)
library(sp)
library(maptools)
library(rgeos)
library(googleVis);op <- options(gvis.plot.tag='chart')
data <- read.csv(choose.files(), header = T, sep = ",")
head(data[,c(1:7, 11)], 2)
## id slat slon sla slo hlat hlon
## 1 1 54°43'N 20°30'E 54.71043 20.45221 54°43'N 20°30'E
## 2 2 55°49'N 49°7'E 55.82492 49.12274 55°49'N 49°7'E
## mix
## 1 Kaliningrad
## 2 Kazan' Tatarstan Licej 7
data<-data[,c(-2,-3, -8, -9, -10)]; head(data, 2)
## id sla slo hlat hlon mix
## 1 1 54.71043 20.45221 54°43'N 20°30'E Kaliningrad
## 2 2 55.82492 49.12274 55°49'N 49°7'E Kazan' Tatarstan Licej 7
data1<-data[,c(2,3,1,4,5,6)]
head(data1, 2)
## sla slo id hlat hlon mix
## 1 54.71043 20.45221 1 54°43'N 20°30'E Kaliningrad
## 2 55.82492 49.12274 2 55°49'N 49°7'E Kazan' Tatarstan Licej 7
for(i in 3:6) {
data1[,i] <- as.character(data1[,i])
}
str(data1)
## 'data.frame': 77 obs. of 6 variables:
## $ sla : num 54.7 55.8 61.7 59.6 50.6 ...
## $ slo : num 20.5 49.1 42.5 30.1 36.6 ...
## $ id : chr "1" "2" "3" "4" ...
## $ hlat: chr "54°43'N" "55°49'N" "61°41'N" "59°34'N" ...
## $ hlon: chr "20°30'E" "49°7'E" "42°32'E" "30°08'E" ...
## $ mix : chr "Kaliningrad " "Kazan' Tatarstan Licej 7" "Rovdino Arhangel'skaja obl. Shenkurskij r-n Rovdinskaja SOSh" "Gatchina SOSh 2" ...
data1$hlat1 = char2dms(data1$hlat, chd = "°", chm = "'") %>% as("numeric")
data1$hlon1 = char2dms(data1$hlon, chd = "°", chm = "'") %>% as("numeric")
data2 <- data1[,c(1,2,6)]
data2$latlong<-paste(data1$sla, data1$slo, sep=":"); data2 <- data2[,c(3,1,2,4)]
head(data2,2)
## mix sla slo latlong
## 1 Kaliningrad 54.71043 20.45221 54.710426:20.452214
## 2 Kazan' Tatarstan Licej 7 55.82492 49.12274 55.824919:49.12274
data("wrld_simpl")
map = fortify(wrld_simpl)
ggplot(map) +
geom_polygon(data = map, aes(long, lat, group = group), color = "black", fill = "white") +
geom_point(data = data2, aes(x = slo, y = sla), color = "red")+
coord_map(ylim=c(-60, 111))

data("wrld_simpl")
wrld_simpl_filtered = wrld_simpl[wrld_simpl@data$NAME %in% c("Bulgaria", "Moldova", "Belarus", "Ukraine", "Finland", "Latvia", "Lithuania", "Estonia", "Kazakhstan", "Russia", "China", "Mongolia", "Norway", "Romania", "Poland", "Turkey", "Georgia", "Azerbaijan", "Korea, Democratic People's Republic of", "Japan", "Sweden"),]
wrld_simpl_df = fortify(wrld_simpl_filtered)
ggplot(wrld_simpl_df) +
geom_polygon(data = wrld_simpl_df, aes(long, lat, group = group), color = "black", fill = "white") +
geom_point(data = data1, aes(x = hlon1, y = hlat1), color = "blue")+
geom_point(data = data2, aes(x = slo, y = sla), color = "red")+
geom_segment(data = data1, aes(x = hlon1, y = hlat1, xend = slo, yend = sla), size = 1) +
xlab("Home vs. School prior to HSE \n red = school prior to HSE, blue = home location")+
ylab("")+
coord_map("ortho", orientation = c(45, 75, 0))

map <- gvisMap(data2, locationvar="latlong",
tipvar="mix")
options = list(showTip=T, showLine=F, enableScrollWheel=TRUE,
useMapTypeControl=T, width=1400,height=800)
plot(map)
rm(list=ls()) #clear workspace