2016-05-10 8 views
1

Gibt es eine Möglichkeit, sichtbare Markierungen (Plural) auf einer Broschüre Karte zu setzen, wenn ein Benutzer auf diese Karte in einer glänzenden Anwendung klickt? Ist es außerdem möglich, die Koordinaten dieses Markers abzurufen?Marker auf Karte Broschüre für glänzend

Wenn nicht in glänzend, können Sie das in Broschüre JS tun?

+1

Haben Sie Live-Beispiele mit Broschüren oder anderen Mapping-Bibliotheken in oder aus R, um die Interaktivität zu demonstrieren, die Sie möchten erreichen? – timelyportfolio

+0

@timelyportfolio Ich möchte, dass ein Marker erscheint, wenn ich mit der Maus auf die Karte klicke. – Stophface

Antwort

2

Es ist schwer, ohne Code spezifisch zu sein, aber hier sind die Grundlagen.

1) Shiny/Leaflet können Sie Ereignisse wie Mausklick abonnieren. Wenn Ihre Karte genannt wird MyMap würden Sie den Code verwenden:

ClickVar<-input$MyMap_click 

dann ClickVar eine reaktive Variable - eine Liste, welche die lat, long und die layerId umfasst.

Jetzt, da Sie die lat und lange haben, können Sie das verwenden, um Ihr Popup hinzuzufügen. Haben all dies in einem observerEvent etwa so:

observeEvent(input$MyMap_click, { 
    ClickVar<-input$MyMap_click 
    addPopups(MyMap, lng=ClickVar$lng, lat=ClickVar$lat, popup="Here I am") 
}) 

Hinweis - habe ich nicht getestet dies so können Sie es leicht ändern müssen. Sie können auch darüber nachdenken, ein Popup zu entfernen, wenn auf ein anderes geklickt wird, indem Sie ihm einen layerID oder group usw. zuweisen.

+0

gibt es eine Möglichkeit, den MAPID_map_click zu speichern? Ich möchte diese Klicks verwenden, um mein 'updateSelectInput' zu aktualisieren –

Verwandte Themen