I did a Cluster Analysis and now I want to display the different groups on a map.
I did an example of the dataframe I have (the original one is way too big).
x1 <- c("Station1", "Station2", "Station3", "Station4", "Station5", "Station6", "Station7", "Station8")
x2 <- c(1, 2, 1, 3, 4, 1, 5, 3)
x3 <- seq(13.0, 15.3, length=8)
x4 <- seq(45.0, 48.0, length=8)
x5 <- c("rural", "urban", "rural", "suburban", "urban", "suburban", "ubran", "rural")
TestCluster = data.frame(Station = x1, Cluster = x2, LON = x3, LAT = x4, Area = x5)
>TestCluster
Station Cluster LON LAT Area
1 Station1 1 13.00000 45.00000 rural
2 Station2 2 13.32857 45.42857 urban
3 Station3 1 13.65714 45.85714 rural
4 Station4 3 13.98571 46.28571 suburban
5 Station5 4 14.31429 46.71429 urban
6 Station6 1 14.64286 47.14286 suburban
7 Station7 5 14.97143 47.57143 ubran
8 Station8 3 15.30000 48.00000 rural
I want to display each Station on a map and use different colors for each Cluster.
I am using this code, but I always get 2 different error messages.
library(ggmap)
library(ggplot2)
Europe <- get_map(location = "Europe", zoom = 4)
p = ggmap(Europe)
p = p + geom_point(data = TestCluster, aes(LON, LAT, color = Cluster), size = 1) +
scale_color_manual(name = "Cluster", values = c("1" = "yellow",
"2" = "orange",
"3" = "red",
"4" = "green",
"5" = "blue"))
p
I get these error messages:
Scale for 'colour' is already present. Adding another scale for 'colour', which will replace the existing scale.
Error: Continuous value supplied to discrete scale
I read that the 2nd error should be solved with the color = as.factor(Cluster) command, but it doesnt work for me.
Any idea why it doesnt work?