# Load libraries
library(tidyverse)
library(ggpubr)
# Load data
load("data/SAMOS/other_data/south_africa_coast.Rdata")
load("data/SAMOS/other_data/sa_provinces.RData")
load("data/SAMOS/other_data/rast_annual.Rdata")
load("data/SAMOS/other_data/MUR.Rdata")
load("data/SAMOS/other_data/MUR_low_res.RData")
# Choose which SST product you would like to use
# sst <- MUR_low_res |> ungroup()
# OR
sst <- MUR
# The colour palette we will use for ocean temperature
cols11 <- c("#004dcd", "#0068db", "#007ddb", "#008dcf", "#009bbc",
"#00a7a9", "#1bb298", "#6cba8f", "#9ac290", "#bec99a")SAMOS Day 5
1 Making maps in ggplot2
ggplot(data = south_africa_coast, aes(x = lon, y = lat)) +
geom_tile(data = sst, aes(fill = bins)) + # The ocean temperatures
geom_polygon(colour = "red", fill = "grey70", aes(group = group)) +
geom_path(data = sa_provinces, aes(group = group)) +
coord_equal(xlim = c(15, 34), ylim = c(-36, -26), expand = 0)ggplot(data = south_africa_coast, aes(x = lon, y = lat)) +
geom_raster(data = sst, aes(fill = bins)) +
geom_polygon(colour = "black", fill = "grey70",
aes(group = group), linewidth = 0.4) +
geom_path(data = sa_provinces, aes(group = group), linewidth = 0.2) +
scale_fill_manual("Temp. (°C)", values = cols11) + # Set the colour palette
coord_equal(xlim = c(15, 34), ylim = c(-36, -26), expand = 0)ggplot(data = rast_annual, aes(x = lon, y = lat)) +
geom_tile(data = sst, aes(fill = bins)) +
scale_fill_manual("Temp. (°C)", values = cols11) +
geom_polygon(data = south_africa_coast,
colour = "black", fill = "grey70",
aes(group = group), linewidth = 0.4) +
geom_path(data = sa_provinces, aes(group = group), linewidth = 0.2) +
geom_tile(data = rast_annual, aes(x = lon, y = lat, fill = bins),
colour = "white", size = 0.1) + # The coastal temperature values
coord_equal(xlim = c(15, 34), ylim = c(-36, -26), expand = 0)final_map <- ggplot(data = rast_annual, aes(x = lon, y = lat)) +
geom_tile(aes(x = lon, y = lat, fill = bins),
colour = "white", size = 0.1) +
geom_raster(data = sst, aes(fill = bins)) +
geom_polygon(data = south_africa_coast,
colour = "black", fill = "grey70",
aes(group = group), linewidth = 0.4) +
geom_path(data = sa_provinces, aes(group = group), linewidth = 0.2) +
geom_tile(aes(x = lon, y = lat, fill = bins),
colour = "white", size = 0.1) +
scale_fill_manual("Temp. (°C)", values = cols11) +
coord_equal(xlim = c(15, 34), ylim = c(-36, -26), expand = 0) +
scale_x_continuous(position = "top") + # Put x axis labels on top of figure
theme(axis.title = element_blank(), # Remove the axis labels
legend.text = element_text(size = 7), # Change text size in legend
legend.title = element_text(size = 7), # Change legend title text size
legend.key.height = unit(0.3, "cm"), # Change size of legend
legend.background = element_rect(colour = "white"), # Add legend background
legend.justification = c(1, 0), # Change position of legend
legend.position = c(0.975, 0.05) # Fine tune position of legend
)
final_map# the full map extent:
xmin <- 12; ymin <- -36.5; xmax <- 40.5; ymax <- -10
xlim <- c(xmin, xmax); ylim <- c(ymin, ymax)
# make a bounding box for cropping:
bbox <- st_bbox(c(xmin = xmin, ymin = ymin,
xmax = xmax, ymax = ymax))
# might be useful for zooming into a smaller region (False Bay and
# the Cape Peninsula):
xlim_zoom <- c(17.8, 19); ylim_zoom <- c(-34.5, -33.2)Rows: 7
Columns: 169
$ featurecla <chr> "Admin-0 country", "Admin-0 country", "Admin-0 country", "A…
$ scalerank <int> 1, 1, 1, 1, 1, 1, 1
$ labelrank <int> 3, 4, 2, 3, 3, 6, 4
$ sovereignt <chr> "Zimbabwe", "eSwatini", "South Africa", "Namibia", "Mozambi…
$ sov_a3 <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_dif <int> 0, 0, 0, 0, 0, 0, 0
$ level <int> 2, 2, 2, 2, 2, 2, 2
$ type <chr> "Sovereign country", "Sovereign country", "Sovereign countr…
$ tlc <chr> "1", "1", "1", "1", "1", "1", "1"
$ admin <chr> "Zimbabwe", "eSwatini", "South Africa", "Namibia", "Mozambi…
$ adm0_a3 <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ geou_dif <int> 0, 0, 0, 0, 0, 0, 0
$ geounit <chr> "Zimbabwe", "eSwatini", "South Africa", "Namibia", "Mozambi…
$ gu_a3 <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ su_dif <int> 0, 0, 0, 0, 0, 0, 0
$ subunit <chr> "Zimbabwe", "eSwatini", "South Africa", "Namibia", "Mozambi…
$ su_a3 <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ brk_diff <int> 0, 0, 0, 0, 0, 0, 0
$ name <chr> "Zimbabwe", "eSwatini", "South Africa", "Namibia", "Mozambi…
$ name_long <chr> "Zimbabwe", "Kingdom of eSwatini", "South Africa", "Namibia…
$ brk_a3 <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ brk_name <chr> "Zimbabwe", "eSwatini", "South Africa", "Namibia", "Mozambi…
$ brk_group <chr> NA, NA, NA, NA, NA, NA, NA
$ abbrev <chr> "Zimb.", "eSw.", "S.Af.", "Nam.", "Moz.", "Les.", "Bwa."
$ postal <chr> "ZW", "ES", "ZA", "NA", "MZ", "LS", "BW"
$ formal_en <chr> "Republic of Zimbabwe", "Kingdom of eSwatini", "Republic of…
$ formal_fr <chr> NA, NA, NA, NA, NA, NA, NA
$ name_ciawf <chr> "Zimbabwe", "eSwatini", "South Africa", "Namibia", "Mozambi…
$ note_adm0 <chr> NA, NA, NA, NA, NA, NA, NA
$ note_brk <chr> NA, NA, NA, NA, NA, NA, NA
$ name_sort <chr> "Zimbabwe", "eSwatini", "South Africa", "Namibia", "Mozambi…
$ name_alt <chr> NA, "Swaziland", NA, NA, NA, NA, NA
$ mapcolor7 <int> 1, 3, 2, 4, 4, 1, 6
$ mapcolor8 <int> 5, 6, 3, 1, 2, 5, 5
$ mapcolor9 <int> 3, 2, 4, 1, 1, 2, 7
$ mapcolor13 <int> 9, 5, 2, 7, 4, 8, 3
$ pop_est <dbl> 14645468, 1148130, 58558270, 2494530, 30366036, 2125268, 23…
$ pop_rank <int> 14, 12, 16, 12, 15, 12, 12
$ pop_year <int> 2019, 2019, 2019, 2019, 2019, 2019, 2019
$ gdp_md <int> 21440, 4471, 351431, 12366, 15291, 2376, 18340
$ gdp_year <int> 2019, 2019, 2019, 2019, 2019, 2019, 2019
$ economy <chr> "5. Emerging region: G20", "6. Developing region", "5. Emer…
$ income_grp <chr> "5. Low income", "4. Lower middle income", "3. Upper middle…
$ fips_10 <chr> "ZI", "WZ", "SF", "WA", "MZ", "LT", "BC"
$ iso_a2 <chr> "ZW", "SZ", "ZA", "NA", "MZ", "LS", "BW"
$ iso_a2_eh <chr> "ZW", "SZ", "ZA", "NA", "MZ", "LS", "BW"
$ iso_a3 <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ iso_a3_eh <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ iso_n3 <chr> "716", "748", "710", "516", "508", "426", "072"
$ iso_n3_eh <chr> "716", "748", "710", "516", "508", "426", "072"
$ un_a3 <chr> "716", "748", "710", "516", "508", "426", "072"
$ wb_a2 <chr> "ZW", "SZ", "ZA", "NA", "MZ", "LS", "BW"
$ wb_a3 <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ woe_id <int> 23425004, 23424993, 23424942, 23424987, 23424902, 23424880,…
$ woe_id_eh <int> 23425004, 23424993, 23424942, 23424987, 23424902, 23424880,…
$ woe_note <chr> "Exact WOE match as country", "Exact WOE match as country",…
$ adm0_iso <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_diff <chr> NA, NA, NA, NA, NA, NA, NA
$ adm0_tlc <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_us <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_fr <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_ru <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_es <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_cn <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_tw <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_in <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_np <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_pk <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_de <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_gb <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_br <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_il <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_ps <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_sa <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_eg <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_ma <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_pt <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_ar <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_jp <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_ko <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_vn <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_tr <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_id <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_pl <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_gr <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_it <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_nl <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_se <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_bd <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_ua <chr> "ZWE", "SWZ", "ZAF", "NAM", "MOZ", "LSO", "BWA"
$ adm0_a3_un <int> -99, -99, -99, -99, -99, -99, -99
$ adm0_a3_wb <int> -99, -99, -99, -99, -99, -99, -99
$ continent <chr> "Africa", "Africa", "Africa", "Africa", "Africa", "Africa",…
$ region_un <chr> "Africa", "Africa", "Africa", "Africa", "Africa", "Africa",…
$ subregion <chr> "Eastern Africa", "Southern Africa", "Southern Africa", "So…
$ region_wb <chr> "Sub-Saharan Africa", "Sub-Saharan Africa", "Sub-Saharan Af…
$ name_len <int> 8, 8, 12, 7, 10, 7, 8
$ long_len <int> 8, 19, 12, 7, 10, 7, 8
$ abbrev_len <int> 5, 4, 5, 4, 4, 4, 4
$ tiny <int> -99, -99, -99, -99, -99, -99, -99
$ homepart <int> 1, 1, 1, 1, 1, 1, 1
$ min_zoom <dbl> 0, 0, 0, 0, 0, 0, 0
$ min_label <dbl> 2.5, 4.0, 1.7, 3.0, 3.0, 4.0, 4.0
$ max_label <dbl> 8.0, 9.0, 6.7, 7.5, 8.0, 9.0, 9.0
$ label_x <dbl> 29.92544, 31.46726, 23.66573, 17.10817, 37.83789, 28.24664,…
$ label_y <dbl> -18.91164, -26.53368, -29.70878, -20.57530, -13.94323, -29.…
$ ne_id <dbl> 1159321441, 1159321289, 1159321431, 1159321085, 1159321073,…
$ wikidataid <chr> "Q954", "Q1050", "Q258", "Q1030", "Q1029", "Q1013", "Q963"
$ name_ar <chr> "زيمبابوي", "إسواتيني", "جنوب أفريقيا", "ناميبيا", "موزمبيق…
$ name_bn <chr> "জিম্বাবুয়ে", "ইসোয়াতিনি", "দক্ষিণ আফ্রিকা", "নামিবিয়া", "মোজাম্বিক", "লেসোথো", "বতসোয়ানা"…
$ name_de <chr> "Simbabwe", "Eswatini", "Südafrika", "Namibia", "Mosambik",…
$ name_en <chr> "Zimbabwe", "Eswatini", "South Africa", "Namibia", "Mozambi…
$ name_es <chr> "Zimbabue", "Suazilandia", "Sudáfrica", "Namibia", "Mozambi…
$ name_fa <chr> "زیمبابوه", "اسواتینی", "آفریقای جنوبی", "نامیبیا", "موزامب…
$ name_fr <chr> "Zimbabwe", "Eswatini", "Afrique du Sud", "Namibie", "Mozam…
$ name_el <chr> "Ζιμπάμπουε", "Εσουατίνι", "Νότια Αφρική", "Ναμίμπια", "Μοζ…
$ name_he <chr> "זימבבואה", "אסוואטיני", "דרום אפריקה", "נמיביה", "מוזמביק"…
$ name_hi <chr> "ज़िम्बाब्वे", "एस्वातीनी", "दक्षिण अफ़्रीका", "नामीबिया", "मोज़ाम्बीक", "लेसोथो", "बोत्सवाना"…
$ name_hu <chr> "Zimbabwe", "Szváziföld", "Dél-afrikai Köztársaság", "Namíb…
$ name_id <chr> "Zimbabwe", "Eswatini", "Afrika Selatan", "Namibia", "Mozam…
$ name_it <chr> "Zimbabwe", "eSwatini", "Sudafrica", "Namibia", "Mozambico"…
$ name_ja <chr> "ジンバブエ", "エスワティニ", "南アフリカ共和国", "ナミビア", "モザンビーク", "レソト", "ボツ…
$ name_ko <chr> "짐바브웨", "에스와티니", "남아프리카 공화국", "나미비아", "모잠비크", "레소토", "보츠와나"…
$ name_nl <chr> "Zimbabwe", "Swaziland", "Zuid-Afrika", "Namibië", "Mozambi…
$ name_pl <chr> "Zimbabwe", "Eswatini", "Południowa Afryka", "Namibia", "Mo…
$ name_pt <chr> "Zimbábue", "Essuatíni", "África do Sul", "Namíbia", "Moçam…
$ name_ru <chr> "Зимбабве", "Эсватини", "ЮАР", "Намибия", "Мозамбик", "Лесо…
$ name_sv <chr> "Zimbabwe", "Swaziland", "Sydafrika", "Namibia", "Moçambiqu…
$ name_tr <chr> "Zimbabve", "Esvatini", "Güney Afrika Cumhuriyeti", "Namiby…
$ name_uk <chr> "Зімбабве", "Есватіні", "Південно-Африканська Республіка", …
$ name_ur <chr> "زمبابوے", "اسواتینی", "جنوبی افریقا", "نمیبیا", "موزمبیق",…
$ name_vi <chr> "Zimbabwe", "Eswatini", "Cộng hòa Nam Phi", "Namibia", "Moz…
$ name_zh <chr> "津巴布韦", "斯威士兰", "南非", "纳米比亚", "莫桑比克", "莱索托", "博茨瓦纳"…
$ name_zht <chr> "辛巴威", "史瓦帝尼", "南非", "納米比亞", "莫三比克", "賴索托", "波札那"…
$ fclass_iso <chr> "Admin-0 country", "Admin-0 country", "Admin-0 country", "A…
$ tlc_diff <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_tlc <chr> "Admin-0 country", "Admin-0 country", "Admin-0 country", "A…
$ fclass_us <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_fr <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_ru <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_es <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_cn <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_tw <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_in <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_np <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_pk <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_de <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_gb <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_br <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_il <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_ps <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_sa <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_eg <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_ma <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_pt <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_ar <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_jp <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_ko <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_vn <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_tr <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_id <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_pl <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_gr <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_it <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_nl <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_se <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_bd <chr> NA, NA, NA, NA, NA, NA, NA
$ fclass_ua <chr> NA, NA, NA, NA, NA, NA, NA
$ geometry <MULTIPOLYGON [°]> MULTIPOLYGON (((31.28789 -2..., MULTIPOLYGON (((31.94824 -2…
Coordinate Reference System:
User input: WGS 84
wkt:
GEOGCRS["WGS 84",
DATUM["World Geodetic System 1984",
ELLIPSOID["WGS 84",6378137,298.257223563,
LENGTHUNIT["metre",1]]],
PRIMEM["Greenwich",0,
ANGLEUNIT["degree",0.0174532925199433]],
CS[ellipsoidal,2],
AXIS["latitude",north,
ORDER[1],
ANGLEUNIT["degree",0.0174532925199433]],
AXIS["longitude",east,
ORDER[2],
ANGLEUNIT["degree",0.0174532925199433]],
ID["EPSG",4326]]
[1] "Republic of Zimbabwe" "Kingdom of eSwatini"
[3] "Republic of South Africa" "Republic of Namibia"
[5] "Republic of Mozambique" "Kingdom of Lesotho"
[7] "Republic of Botswana"
Reuse
Citation
BibTeX citation:
@online{a._j.,
author = {A. J. , Smit and Smit, AJ},
title = {SAMOS {Day} 5},
url = {http://samos-r.netlify.app/SAMOS_Day_5.html},
langid = {en}
}
For attribution, please cite this work as:
A. J. S, Smit A SAMOS Day 5. http://samos-r.netlify.app/SAMOS_Day_5.html.













