Exportation d'un fichier KML à utiliser dans Google Maps. Voici le code à l'exportation (adapté de here):Exportation d'un tableau de données vers Google Maps KML dans R
t_expkml_c <- function(obj, archivo,
col_nombre, col_desc, col_color,
mapa_colores = "mapa_colores_topaz",
mapa_nombre = "Mapa_TSE", mapa_desc = "Mapa Creado por PE de TSE") {
# - changes projection
if (proj4string(obj)!="+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0") {
cat("Input SpatialPolygonsDataFrame ",obj," re-projected from ",
proj4string(obj)," to WGS84 longlat\n",sep="")
assign(obj,spTransform(obj,CRS(" +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0")))
} # check projection
# opens file
kmlFile <- file(archivo,
open = "w")
# goes through each polygon
# usa maptools::kmlPolygon
Xout <- sapply(slot(obj,
"polygons"),
function(x) {
maptools::kmlPolygon(x, # Object
name = as(obj, "data.frame")[slot(x, "ID"), col_nombre],
# name column
col = mapa_colores[as.numeric(as(obj, "data.frame")[slot(x, "ID"), col_color])],
# color column
lwd = 0.5, # stroke
border = NA, # borders
visibility = TRUE,
description = as(obj,"data.frame")[slot(x, "ID"), col_desc], #description (what I need to change)
)
}
)
# export polyon out
cat(kmlPolygon(kmlname=mapa_nombre,
kmldescription=mapa_desc)$header,
file = kmlFile, sep="\n")
# estilos
cat(unlist(Xout["style",]),
file = kmlFile, sep="\n")
# contenidos
cat(unlist(Xout["content",]),
file = kmlFile, sep="\n")
# footers
cat(kmlPolygon()$footer,
file = kmlFile, sep="\n")
close(kmlFile) # end
}
Cela fonctionne bien quand je une seule colonne de la [email protected]
data.frame (l'objet est classe SpatialPolygonsDataFrame
). Cependant, je veux exporter une table de données plus grande, afin qu'elle puisse apparaître dans la description de la forme de Google Maps.
Par exemple ceci est avec une colonne (l'exportation d'origine);
Si je veux ajouter d'autres descripteurs, je modifier le tableau de données dans Google Maps comme ceci:
Mais je veux reproduire ce comportement de l'exportation d'origine dans R. Je essayé de modifier le description
paramètre pour ajouter un vecteur un nom de colonne ou même et l'index des noms de colonnes (c("Column2", "Column3")
ou 1:2
) et j'ai essayé d'ajouter du HTML à la colonne de description (qui ne fonctionne pas lors de la visualisation dans le tableau de données Google Maps dans différentes colonnes évidemment).
Comment puis-je y parvenir?
Légère digression: Comment utilisez-vous la table sur la carte pour remplir la fenêtre d'information? (Je viens de pousser une fonction 'add_kml()' vers la [dev version] (https://github.com/SymbolixAU/googleway) de mon paquet qui va vous permettre de tracer le KML sur une carte depuis R) – SymbolixAU
Et votre lien est brisé – SymbolixAU