Ich versuche eine KML-Karte von CCG-Grenzen in England (Available here, 200Kb) in R zu importieren, wobei readOGR
Funktion von Paket rgdal
verwendet wird. Mein Endziel ist es, eine Heatmap zu erstellen, indem CCGs nach einem bestimmten Wert eingefärbt werden. Ich habe eine Liste mit diesen Werten neben CCG-Namen in einem Datenrahmen. Ich muss CCG-Namen in diesem Datenrahmen mit CCG-Namen im importierten Kartenobjekt abgleichen und Farben basierend auf dem Wert zuweisen. Ich kann jedoch keine importierten CCG-Namen im Kartenobjekt sehen, obwohl sie in der KML-Datei vorhanden sind. Dies ist, was ich tue:readOGR (rgdal) kann Polygonnamen nicht aus XML holen
library(sp)
library(rgdal)
library(maps)
library(maptools)
Angenommen, die KML-Datei befindet sich im Arbeitsverzeichnis. Listing Schichten:
ogrListLayers("Clinical_Commissioning_Groups_April_2016_Ultra_Generalised_Clipped_Boundaries_in_England.KML")
Lese OGRGeoJSON
Schicht:
ccg_boundaries <- ReadOGR("Clinical_Commissioning_Groups_April_2016_Ultra_Generalised_Clipped_Boundaries_in_England.KML","OGRGeoJSON")
R Studio zeigt, gibt es zwei Abschnitte (richtiges Wort?) In dem Objekt.
polygons
, die Daten für jedes Polygon enthält, z. für die erste:
> [email protected][1]
[[1]]
An object of class "Polygons"
Slot "Polygons":
[[1]]
An object of class "Polygon"
Slot "labpt":
[1] -2.104671 54.040320
Slot "area":
[1] 0.168067
...
Und data
, mit zwei Variablen (Name
und Description
), die ich erwarten würde CCG Namen enthalten, aber es ist leer:
> [email protected]
Name Description
0
1
2
3
4
5
jedoch die CCG-Namen sind Dort in der KML-Datei, die zu sehen ist, wenn sie mit einem Word-Editor geöffnet wird, z der erste in der alphabetischen Reihenfolge ist "NHS Airedale, Wharfedale und Craven".
Gibt es vielleicht eine Option zu lesenOGR oder eine andere Option, um sie zu extrahieren und in das Objekt aufzunehmen?