tmap pch форма и цвет tm_symbol
Я использую tmap для создания карты, которая будет иметь эстетику формы и цвета. Тем не менее, я замечаю странное поведение в моей числовой шкале для цвета (она производит шкалы от 0 минут до 10 минут, от 10 минут до 20 минут и т. Д.). Почему tmap возвращает этот масштаб? Я хотел бы контролировать pch символов, чтобы A и B указывали 21 и 19 pch соответственно, как это можно сделать?
Мой пример:
library(tmap)
data(metro)
metro$new_var <- c("A","B")
metro$new_var <- factor(metro$new_var)
tm_shape(metro) +
tm_symbols(shape="new_var", col = "pop2010") +
tm_layout(legend.outside = TRUE, legend.outside.position = "bottom", legend.stack = "horizontal")
1 ответ
Во-первых, масштаб не мин, а млн (миллион). Возможно, это имеет больше смысла?
Во-вторых, в отношении того, почему она выбирает эти категории, справка объясняет (по общему признанию, это может быть более понятным), что, если указано несколько значений, она будет делать "маленькие кратные", при которых, по-видимому, будет означать небольшое количество категорий. Стиль по умолчанию "pretty"
, Вы можете контролировать количество категорий по n
, но довольно, кажется, делает более или менее, чтобы держать его "красиво". Попробуйте это, чтобы увидеть эффект n
:
tm_symbols(shape = "new_var", col = "pop2010", n = 6)
Чтобы иметь точный контроль, вы можете сделать свою собственную категориальную переменную. Вы также можете сделать так, чтобы он имел непрерывное затенение (вы можете распространять его с n
больше):
tm_symbols(shape = "new_var", col = "pop2010", style = "cont")
Наконец, что касается форм, помощь говорит, что если shape
переменная, вы должны сказать ей, что вы хотите с shapes
параметр по умолчанию 21:25
объясняя, почему вы видите символы, которые вы делаете. 19 и 21 выглядят немного странно для меня, поэтому я использую альтернативу, но если вы хотите 19 и 21, вы бы сделали то же самое, заменив при необходимости:
tm_symbols(shape = "new_var", col = "pop2010", shapes = c(24, 25))
Удачи - это какая-то хитрая помощь!