Мальдивы не подходят для большой карты в этом формате, поскольку они настолько малы по отдельности и разбросаны. Фактически, если вы используете данные среднего разрешения из rnaturalearth
, которые вы используете в настоящее время, вы увидите только один или два из сотен островов, и они будут отображаться как маленькие капли.
Вместо этого, вы можете получить карту с более высоким разрешением, например:
maldives <- ne_countries("large", country = "Maldives", returnclass = "sf")
theme_set(theme_bw())
ggplot(data = maldives) +
geom_sf() +
coord_sf(xlim = c(70, 76))

You can show them in relation to the nearby countries of India and Sri Lanka if you just want to see their overall shape, extent and location:
maldives <- ne_countries("large",
country = c("Maldives", "India", "Sri Lanka"),
returnclass = "sf")
theme_set(theme_bw())
ggplot(data = maldives) +
geom_sf() +
coord_sf(xlim = c(72, 82), ylim = c(-1, 15))

Another option is to colour the map to allow the islands to "pop"
ggplot(data = maldives) +
geom_sf(fill = "#55790A", color = "#90FF20") +
coord_sf(xlim = c(72, 82), ylim = c(-1, 15)) +
theme(panel.background = element_rect(fill = "#342255"),
panel.grid = element_line(color = "#4f4f6f"))

Or stick to your original format but zoom in to near the capital:
ggplot(data = maldives) +
geom_sf() +
coord_sf(xlim = c(72.5, 73.5), ylim = c(6, 7.2))
введите описание изображения здесь