library(nsoApi) library(dplyr) library(tidyr) library(RCurl) curl <- getCurlHandle() n_table <- 5
file.apiKey.enc <- system.file("apiKey.R.gpg", package = "nsoApi") nsoApi::nsoApiGPG(file = file.apiKey.enc, gpg = NULL, passphrase = Sys.getenv("NSOAPIGPG"), keep = FALSE )
api.param.datenexport <- list( method = "DatenExport", kennung = apiKey$GENESIS$kennung, passwort = apiKey$GENESIS$passwort, namen = "73421BJ001", bereich = "oeffentlich", format = "csv", werte = "false", metadaten = "false", zusatz = "true", startjahr = "2013", endjahr = "2014", zeitscheiben = "", regionalschluessel = "", sachmerkmal = "", sachschluessel = "", stand = "01.01.2001", sprache = "de" ) ## retrieve metadata xml_list_datenexport_meta <- genesisAPI(api.param = api.param.datenexport, service = "ExportService", curl = curl) meta_df <- genesisXMLtoDF(xml.list = xml_list_datenexport_meta, meta = TRUE) knitr::kable(meta_df)
api.param.datenexport <- list( method = "DatenExport", kennung = apiKey$GENESIS$kennung, passwort = apiKey$GENESIS$passwort, namen = "73421BJ001", bereich = "oeffentlich", format = "csv", werte = "true", metadaten = "false", zusatz = "false", startjahr = "1993", endjahr = "2016", zeitscheiben = "", regionalschluessel = "", sachmerkmal = "", sachschluessel = "", stand = "01.01.2001", sprache = "de" ) ## retrieve data xml_list_datenexport <- genesisAPI(api.param = api.param.datenexport, service = "ExportService", curl = curl) ## convert to data frame data_df <- genesisXMLtoDF(xml.list = xml_list_datenexport) knitr::kable(data_df[1:n_table,])
library(ggplot2) library(ggradar) p <- data_df %>% left_join(meta_df$label, by = c("UNIT" = "code")) %>% select(-DINSG, -UNIT) %>% rename(year = `ZI-WERT`) %>% spread(key = label, value = WERT) %>% mutate_at(vars(-year), funs(scales::rescale)) %>% ## gather(key = UNIT, value = WERT, -year) %>% ## filter(year %in% c(min(year), max(year))) %>% filter(year %in% c(1993, 2005, 2016)) %>% ggradar(font.radar = "sans", grid.label.size = 4, axis.label.size = 4, group.point.size = 1, group.line.width = 1, plot.extent.x.sf = 1.8) + scale_color_manual(values = c( ## "#d2223e", # red "#000000", # black "gold", # black ## "#ffc20e", # yellow "#F92672" )) + theme( legend.position = c(0.5, 0), legend.justification = "center", legend.direction = "horizontal", legend.text = element_text(size = 10), legend.background = element_rect(fill = NULL) ) p
fig_path <- "../../../html/slides/nsoapi/assets/" svg(file = file.path(fig_path, "genesis-radar.svg"), height=4.5, width = 8.5) print(p) dev.off()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.