Ich benutze ggplot, um eine Karte zu erstellen, mit einem Gradienten zum Ausfüllen der verschiedenen Regionen basierend auf meinen Daten.Zu viele Linien gezeichnet für Kartenrahmen mit ggplot in R
Der Standard hat die Karte ohne Grenzlinien gezeichnet. Ich möchte sie einbeziehen und habe einen Code basierend auf this question geschrieben. Dies hat jedoch zu zu vielen Linien geführt, die alle Ecken der Regionen verbinden, denke ich. Wie vermeide ich das?
Im folgenden Code ist Datendatei, wo die Daten, die ich auf der Karte angezeigt werden soll, gespeichert ist, Schot ist das Shapefile.
Die Linie, die das Problem verursacht, ist geom_polygon.
ggplot() +
geom_map(data = datafile, aes(map_id = region, fill = datafile$"2007"), map = Scot) +
geom_polygon(data = Scot, aes(x = Scot$long, y = Scot$lat), colour = "gray", fill = NA) +
expand_limits(x = Scot$long, y=Scot$lat) +
scale_fill_gradient(low = ("lightyellow"), high = ("red"), limits = c(0,35000)) +
ggtitle("2007") +
coord_fixed(1.2) +
theme(axis.text.x = element_blank(), axis.text.y = element_blank(),
axis.ticks = element_blank(), axis.title.x = element_blank(),
axis.title.y = element_blank(),
panel.grid.major = element_blank(), panel.grid.minor = element_blank(),
panel.border = element_blank(), panel.background = element_blank(),
legend.title = element_text(face = "bold"),
plot.title = element_text(face = "bold", hjust = 0.5))
Verwenden Sie nicht die $ Notation innerhalb der 'Aes'. Dies könnte die Ursache für Ihre Probleme sein. Für Ihre Spalte namens "2007", Surround es von \ 's –