我想點擊一個Leaflet多邊形,讓TabPanel在Shiny中更改。我對如何做到這一點有幾點想法,但是我找不到實現它們所需的信息。我在tabPanel中有傳單,但是我想在點擊多邊形時切換到另一個選項卡。我想製作popup=updateTabsetPanel(session="New Tab")
,但這並不奏效。我的另一個想法是在用戶點擊一個新的多邊形時調用updateTabsetPanel(session="New Tab")
,但我不知道我需要返回什麼事件才能讓它知道點擊了一個新的多邊形,或者即使彈出了一個新的彈出窗口。有人知道嗎?如何在R中按下傳單彈出時創建事件?
3
A
回答
8
下面是當你點擊一個多邊形,更新的反應函數的例子:
output$myMap <- renderLeaflet({
map_out() #this is just a function that returns a leaflet map
})
output$MyGraph <- renderPlot({
event <- input$myMap_shape_click #Critical Line!!!
... #Code to run here
GraphData <- GraphData[event$id] # subsetting example
}
})
有幾件事情,這裏要注意:
的
input$myMap_shape_click
變化根據你所說的地圖以上。我稱之爲myMap
,所以結構如圖所示。如果您使用output$YourMap
進行初始化,則點擊將被調用input$YourMap_shape_click
您點擊的多邊形的ID可以通過
event$id
訪問。這對基於單擊的多邊形進行子集+繪圖非常有用。還可以訪問的是event$lat
和event$lng
renderPlot
可以是任何反應函數。如果它不與特定的輸出關聯,則可以按如下方式使用observe
。這樣,只要點擊一個多邊形,代碼就會運行。這是因爲每次點擊時input$myMap_shape_click
的值都會更改。
我沒有用之前updateTabsetPanel
,但我想這將工作:
observe({
event <- input$myMap_shape_click
updateTabsetPanel(session, "inTabset", selected = event$id)
})
這將選項卡切換到面板相同的ID您單擊的多邊形。
相關問題
- 1. r閃亮的傳單 - 按需創建彈出窗口
- 2. 如何在Shiny/R中創建自定義傳單彈出樣式
- 3. 如何在iOS中按下「後退」按鈕時創建確認彈出窗口?
- 4. 彈出與R中的傳單時彈出?
- 5. 如何在按下菜單按鈕時創建單擊事件和雙擊事件?
- 6. 如何在點擊按鈕時創建彈出窗體?
- 7. 黑莓彈出菜單出現在按鈕單擊事件
- 8. 如何在TableRow中動態創建按鈕單擊事件?
- 9. 如何創建彈出菜單
- 10. 如何創建SDL彈出式菜單?
- 11. 如何在angularjs中單擊按鈕時彈出一個按鈕?
- 12. 按下時在ascx控件上創建點擊事件
- 13. 如何在ReactJs中創建彈出框
- 14. 當按鈕和功能在單獨的文件中時,如何在react.js中創建一個彈出窗口?
- 15. 如何在下載按鈕上創建一個彈出按鈕點擊
- 16. 如何爲運行時創建的按鈕創建事件?
- 17. 如何禁用確認彈出按鈕NG單擊事件
- 18. 如何在xcode中創建彈出按鈕?
- 19. 如何創建一個彈出窗口,當我按在Java中
- 20. 如何在按下某個鍵時在HTML中激活彈出菜單
- 21. 如何創建彈出框
- 22. 如何在Android中創建彈出的單選按鈕滾動視圖?
- 23. 如何創建在Android中具有按鈕的彈出式菜單?
- 24. 如何爲按鈕按下時創建兩個輸出?
- 25. 如何在R中按組創建訂單統計?
- 26. 如何在visual basic.net中創建一個彈出式菜單?
- 27. 如何在iOS中創建一個彈出式菜單?
- 28. 如何在android卡片視圖中創建彈出式菜單
- 29. 如何在Xamarin表單中創建自定義彈出框
- 30. 如何在PackageExplorer中僅爲目錄創建彈出菜單項