Я хочу отобразить точечные данные с результатами подсчета птиц. Размер точки должен быть масштабирован в соответствии с количеством подсчитанных птиц. Если область не была подсчитана, x должен отображаться для значений NA. Как мне построить эти данные и получить хорошую легенду с помощью пакета tmap?
Это похожий пример:
rm(list=ls(all=TRUE))
library(tmap)
data(World, metro)
# put population size pop2020 to NA for some cities
metro$pop2020[10:300] <- NA
# add column with code for the shape of the symbol (21 for data available, 4 for NA)
metro$shape_symbol <- 21
metro[is.na(metro$pop2020), ]$shape_symbol <- 4
tm_shape(World) + tm_fill()+
tm_shape(metro) +
tm_symbols(
size = "pop2020",
col = "black",
shape = "shape_symbol", # use column shape_symbol in metro for the symbol
# shapeNA = "4", # should plot NA as cross by default - didn´t work for me
title.size = "subtitle",
legend.size.is.portrait=TRUE) +
tm_layout(legend.bg.color = "gray",
legend.frame = "black")
Что дает этот вывод. Почему значения NA не отображаются? И как мне получить хороший вывод легенды?
Моя цель - достичь этого:
Название вида птиц должно быть дано в виде жирного названия легенды с дополнительной надписью «Anzahl» для символов легенды ниже. В идеале символ x для NA должен быть таким. Я могу вставить (i) из цикла в качестве заголовка легенды с title.size, но как мне получить второй заголовок в легенде.
Дополнительный вопрос: можно ли установить размер точек в определенном диапазоне? Чтобы очень маленькие числа имели минимальный размер на карте?