tmap - 改变 tm_markers 的行为

tmap - changing the behaviour of tm_markers

这是一个可重现的例子

#load the packages
library(easypackages)
packages("tidyverse","readxl","sf","tmaptools","tmap","lubridate",
         "lwgeom","Cairo","nngeo","purrr","scales", "ggthemes","janitor")

polls<-st_as_sf(read.csv(url("https://www.caerphilly.gov.uk/CaerphillyDocs/FOI/Datasets_polling_stations_csv.aspx")),
                coords = c("Easting","Northing"),crs = 27700)%>%
  mutate(date = sample(seq(as.Date('2020/01/01'), as.Date('2020/05/31'), by="day"), 147))

test_stack<-polls%>%st_join(polls%>%st_buffer(dist=1000),join=st_within)%>%
  filter(Ballot.Box.Polling.Station.x!=Ballot.Box.Polling.Station.y)%>%
  add_count(Ballot.Box.Polling.Station.x)%>%
  rename(number_of_neighbours = n)%>%
  mutate(interval_date = date.x-date.y)%>%
  subset(select = -c(6:8,10,11,13:18))## removing this comment will summarise the data so that only number of neighbours is returned %>%
distinct(Ballot.Box.Polling.Station.x,number_of_neighbours,date.x)%>%
  filter(number_of_neighbours >=2)

polls%>%mutate(id = as.numeric(row_number()))%>% mutate(thing = case_when(id %% 2 == 0 ~ "stuff",
                                                                          id %% 2 !=0 ~ "type"))->polls
  
qtm(polls)
tmap_mode("view")
tm_shape(polls) + tm_markers(col = "thing")

tm_shape(polls) + tm_dots(col ="thing", size = 0.75)

我想做的是改变 tm_markers 的颜色和大小,因为在我想使用它的东西中,很容易使用不同的颜色标记会很好。

与此相关的是了解当地图模式为“查看”并生成 html 时标记的聚类是如何工作的。

任何关于 tm_marker 行为和 tm_marker 集群的帮助都会很棒。 谢谢 ==“很多!”

最后证明比使用标记简单多了。从美学上讲,我不喜欢“标记”,但我确实喜欢“点”,并且 tm_dots 可以让您更轻松地整理颜色(或者在我看来更容易..)。事实是。出色地。聚类可以应用于点、气泡和 tm_symbols。 都在这里: https://cran.r-project.org/web/packages/tmap/tmap.pdf (第 89/90 页)

无论如何

tm_shape(polls) + tm_dots(col ="thing", size = 0.75,clustering = T)

这就是答案(对我而言)。我可以聚类,然后按字段着色。