微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

串扰 - 在一张传单地图中过滤两种不同的共享数据环境

如何解决串扰 - 在一张传单地图中过滤两种不同的共享数据环境

我有两个单独的数据帧,其中包含一个公共密钥,我试图将其与传单映射并通过串扰提供过滤。对于此应用程序,Shiny 不是一个选项,因为这些将是上传到 Sharepoint 以供查看的独立网页。

一个数据框是位置列表,第二个数据框是与第一个相关的其他位置列表。目标是使用 filter_select 过滤第一个位置,并让地图显示一个标记,然后显示相关位置的不同类型的标记。如果我执行其中任一操作,串扰滤波器就可以正常工作。如果我尝试添加两者,过滤器将不再起作用。

如果我将所有内容放入单个数据帧并尝试两个不同的 addMarkers 调用(类似于这个未回答的问题),这也会中断:Crosstalk links broken by second Leaflet addCircleMarkers call

任何帮助将不胜感激!

---
title: "Untitled"
output: 
  flexdashboard::flex_dashboard:
    orientation: columns
    vertical_layout: fill
---

```{r setup,include=FALSE}
library(dplyr) ; library(flexdashboard) ; library(crosstalk) ; library(leaflet)

foo <- data.frame(
  id = rep(1:5),lat = runif(5,34,40),lng = runif(5,118,123) * -1
)

bar <- data.frame(
  id = rep(1:5,times = 5,each = 3),lat = runif(15,lng = runif(15,123) * -1
)

sd_foo <- SharedData$new(foo,group = "foo",key = ~id)
sd_bar <- SharedData$new(bar,key = ~id)
```

Column {data-width=100}
-----------------------------------------------------------------------

### Filter

```{r}
filter_select("id","Select ID:",sd_foo,~id,multiple = FALSE)
```

Column {data-width=500}
-----------------------------------------------------------------------

### Map

```{r}
leaflet(sd_foo) %>%
  addTiles() %>%
  addMarkers() %>%
  addCircleMarkers(data = sd_bar)
```

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。