On 2020-03-31 03:38 +0200, george brida wrote: > i would like to plot the maps of the Gulf Cooperation Council (GCC) > countries (KSA, Qatar, Bahrain, Kuwait, UAE and Oman) with these > constraints: i/ KSA , Qatar and Bahrain have the same face color , ii/ > Kuweit and UAE with the same face color and iii/Oman with another face > color.
Hi! Perhaps by using rnaturalearth, sf, and ggplot2: world <- rnaturalearth::ne_countries( scale = "medium", returnclass = "sf") grp1 <- c("Saudi Arabia", "Qatar", "Bahrain") grp2 <- c("Kuwait", "United Arab Emirates") grp3 <- c("Oman") world$GCC <- rep(NA, length(world$name)) idx <- world$name %in% c(grp1, grp2, grp3) world$GCC[idx] <- world$name[idx] world$GCC world$CountryGroup <- rep(NA, length(world$name)) world$CountryGroup[world$name %in% grp1] <- "i/ KSA, Qatar and Bahrain" world$CountryGroup[world$name %in% grp2] <- "ii/ Kuwait and UAE" world$CountryGroup[world$name %in% grp3] <- "iii/ Oman" names(world) world <- cbind(world, sf::st_coordinates(sf::st_centroid(world$geometry))) ggplot2::ggplot(data = world) + ggplot2::theme_bw() + ggplot2::geom_sf() + ggplot2::geom_sf(fill = NA, color = gray(.5)) + ggplot2::geom_sf(ggplot2::aes(fill=CountryGroup)) + # ggrepel::geom_text_repel(ggplot2::aes(x=X, y=Y, label=GCC)) + # ggplot2::geom_sf(ggplot2::aes(fill=CountryGroup, label=CountryGroup)) + ggplot2::coord_sf(xlim = c(32, 61), ylim = c(10, 33), expand = FALSE) + ggplot2::xlab("Longitude") + ggplot2::ylab("Latitude") + ggplot2::ggtitle("Gulf Cooperation Council (GCC)") Regards, Rasmus ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.