Я использовал алгоритм EM для кластеризации округов Калифорнии на основе некоторых экономических переменных.Теперь я хочу создать карту Калифорнии с графствами, в которой графства в одном кластере имеют одинаковый цвет.Всего есть 2 кластера, характеризуемые 1 или 2 в столбце datafit $ классификация.К сожалению, при сопоставлении округов по их соответствующим кластерам возникает ошибка, которую я не могу устранить, а именно: Ошибка: эстетика должна быть либо длины 1, либо соответствовать данным (2977): заполните
У меня естьЯ видел, что подобные вопросы уже задавались, но я не смог найти подходящее мне решение.Я не пощадил свои данные или что-то написал с ошибкой.
#this generates a map of the US
states <- map_data("state")
ca_df <- subset(states, region == "california")
counties <- map_data("county")
ca_county <- subset(counties, region == "california")
ca_base <- ggplot(data = ca_df, mapping = aes(x = long, y = lat, group = group)) +
coord_fixed(1.3) +
geom_polygon(color = "black", fill = "gray")
ca_base + theme_nothing() +
geom_polygon(data = ca_county, fill = NA, color = "white") +
geom_polygon(color = "black", fill = NA)
#merge map data with my clustered data(called newdata)
cacopa <- inner_join(ca_county, newdata, by = "subregion")
ditch_the_axes <- theme(
axis.text = element_blank(),
axis.line = element_blank(),
axis.ticks = element_blank(),
panel.border = element_blank(),
panel.grid = element_blank(),
axis.title = element_blank()
)
final_map <- ca_base +
geom_polygon(data = cacopa, aes(fill = datafit$classification), color = "white") +
geom_polygon(color = "black", fill = NA) +
theme_bw() +
ditch_the_axes
final_map
Я хочу, чтобы цвет округов зависел от значения классификации datafit $, однако это пока не работает.Любые предложения о том, как заставить это работать?