Neu hier und relativ neu zu R auch, also bitte verzeih mir apriori und lass mich wissen, was ich in diesem Beitrag falsch mache, um andere in Zukunft nicht zu ärgern:Kann nicht mit dem Broschürenpaket von R in Schleife gehen, um mehrere Karten zu erzeugen
Ich versuche eine Sequenz (Sep-1971 bis April-1972) von Flugblattkarten zu erstellen. Am Ende möchte ich sie glänzend machen und einen Benutzer eine Animation abspielen lassen (Pause).
No While und For-Loops funktionierte für mich. Increments hatte funktioniert, als ich meine i
s nach dem Ausführen des Codes überprüft, funktioniert die Broschüre nicht. Ohne den Loop hat mein "Dynamic Leaflet Fails" (siehe unten im Code-Abschnitt) funktioniert und eine Karte geöffnet.
Ist es nicht möglich, Broschüren sequenziell zu erstellen?
#set working directory
require(leaflet)
require(dplyr)
#Build data.frame with 10 obs + 3 cols
power <- data.frame(Latitude <-c(33.515556, 38.060556, 47.903056, 49.71, 49.041667, 31.934167, 54.140586, 54.140586, 48.494444, 48.494444), Longitude <- c(
129.837222, -77.789444, 7.563056, 8.415278, 9.175, -82.343889, 13.664422, 13.664422, 17.681944, 17.681944), start <- c(as.Date(
"15-Sep-1971", "1-Dec-1971", "1-Feb-1972", "1-Feb-1972", "1-Feb-1972", "1-Feb-1972", "1-Apr-1972", "1-Apr-1972", "24-Apr-1972", "24-Apr-1972", format = "%d-%b-%Y")))
#"Dynamic" leaflet Fails1: While+For combo
i<- as.Date("1971-09-14")
while (i < as.Date("1972-05-01")) { for(star in start){
if (star > i) {
leaflet(power) %>% addTiles() %>%
addCircleMarkers(lng = ~Longitude, lat = ~Latitude)
}}
i <- i+60}
#"Dynamic" leaflet Fails2: For+break combo
lap <- seq(as.Date("1971-09-14"), as.Date("1972-05-01"), by = "month")
for(i in lap) {
leaflet (data = power[power$start > i,]) %>%
addTiles() %>%
addCircleMarkers(lng = ~Longitude, lat = ~Latitude)
if (i > as.Date("1951-01-01"))
{ break }}
Da dieses Merkblatt dynamische Karten erstellt, ist es eine bessere Idee, eine Karte zu erstellen, wo Sie das Startdatum anpassen können. 'shiny' macht es ziemlich einfach. Andernfalls, wenn Sie eine Broschüre verwenden, um statische Karten zu erstellen (keine gute Idee), erstellen Sie eine Plotfunktion, oder speichern Sie zumindest die Karten, die Sie erstellen, damit Sie etwas damit machen können. – alistaire
Danke Alistaire! Was ist der Unterschied zwischen einer (einzelnen) dynamischen und statischen Flugblattkarte? Wenn es einen gibt, fehlt mir etwas Großes. Wie ich es sehe, wird die Broschüre die Anpassungen nicht glänzend stören, aber ich kann falsch liegen und ich bin offen für Vorschläge. Mit all dem versuche ich, so etwas zu erschaffen: (https://seth127.shinyapps.io/slider/), aber ich konnte keinen Code von einem anderen früheren Projekt finden, in dem die Animation und das Flugblatt von shiny kombiniert wurden. Wenn du einen Vorschlag hast, wie das geht, erleuchte mich bitte! – Naibaf
Uh! -3 Forschungsaufwand. Zurück zum Lernen und mein Herz ist gebrochen. In allem Ernst, habe ich das viele Versuche und Fehler gemacht und im Internet surfen, vielleicht mehr als das, was meine Post involviert zu haben scheint. Teilen Sie Ihre Gehirne mit mir, PLZ – Naibaf