Я использую ggplot2
для построения карты и точек поверх нее. Это состоит из построения карты и последующего использования geom_point()
для размещения точек. Кроме того, эти точки различаются по размеру в зависимости от другой переменной. Когда я рисую это, получается несколько легенд.
ggplot(mapdata, aes(x=long, y=lat)) +
geom_map(map=mapdata, aes(map_id=region), fill="#ffffff", color="black", size=0.15) +
xlim(4, 15) +
ylim(47, 55) +
geom_point(data = dat, aes(long, lat, size = feature, alpha = 0.2, colour = "#007f3f")) +
scale_colour_manual(values = "#007f3f")
Как объясняется в этом вопросе (а также вот этот) обычно это можно сделать используя одинаковые значения name
и labels
для обеих шкал, однако я не уверен, как это применить, когда данные не указываются в основном вызове ggplot (т.е. не в геометрии) и с размером в качестве легенды. Я пробовал много итераций этого:
ggplot(mapdata, aes(x=long, y=lat)) +
geom_map(map=mapdata, aes(map_id=region), fill="#ffffff", color="black", size=0.15) +
xlim(4, 15) + ylim(47, 55) +
geom_point(data = dat, aes(long, lat, size = feature, alpha = 0.2, colour = "#007f3f")) +
scale_color_manual(name = "feature", values = "#007f3f", labels=c("1.0", "1.5", "2.0", "2.5", "3.0")) +
scale_size_manual(name = "feature", values = c(1.0, 1.5, 2.0, 2.5, 3.0), labels=c("1.0", "1.5", "2.0", "2.5", "3.0"))
Как я могу объединить легенды?