Есть ли способ сделать гиперссылки во всплывающем окне элемента tm_bubbles? - PullRequest
0 голосов
/ 16 апреля 2019

Я использую пакет tmap для визуализации некоторых значений на карте. Кто-нибудь знает способ интеграции гиперссылок во всплывающее окно интерактивной карты?

Я использовал код ниже. Я вижу нужный URL, но никто не может щелкнуть по нему.

Затем я добавил < A HREF="URL">name< / A > в строку. Но это не заставляет его работать.

tmap_mode("view")

tm_shape(dataset) +
  tm_bubbles(size = 1, col = "value1", palette = "-RdBu", popup.vars = c("value2","URL"), text = "value3")

Буду признателен за любую помощь в обнаружении, если это вообще возможно.

1 Ответ

0 голосов
/ 16 апреля 2019

Насколько я знаю, у вас мало контроля над всплывающими окнами в tmap. Намного проще использовать библиотеку листовок напрямую, через пакет leaflet.

Сначала я вставляю текст всплывающего окна в виде HTML, а затем использую его в leaflet::addCircleMarkers() вызовах в качестве аргумента всплывающего окна (тильда важна).

Круговые маркеры из листовки очень похожи на пузырьки tmap, и их можно настроить так, чтобы они выглядели намного лучше; Для краткости кода я сосредоточился на основной теме: настраиваемые гиперссылки во всплывающих подсказках интерактивной карты.

library(dplyr)   # for mutate & pipe
library(tmap)    # for the metro dataset
library(leaflet) # interface to leaflet

data("metro") # from the tmap package

metro %>% 
  mutate(label = paste("marvel at ", name, " and follow <a href = https://stackoverflow.com/>stack overflow</a>")) %>% 
  leaflet() %>%
  addTiles(group = "OSM") %>%
  addCircleMarkers(popup = ~label)

screenshot

...