在 Mapview 中绘制点数据 - 点符号大小的非线性比例?
plotting point data in Mapview - non-linear scale for point symbol sizes?
mapview
库是否有办法使用非线性比例绘制点符号的大小?例如,使用几何间隔、自定义间隔向量或基于 Jenks 自然中断方法之类的间隔? (mapview
's '线性设置点大小 'cex'': https://r-spatial.github.io/mapview/articles/articles/mapview_02-advanced.html )
我的用例是绘制河流流量数据的许多点,但由于海洋潮汐在海岸的高值和低值占主导地位,以至于基本上所有非沿海位置似乎都有符号大小(代表河流流量)几乎没有什么不同,而我希望用户可以轻松地将差异可视化,例如小溪与河流(例如,这里的三组值在 1000 年代,另一组在 5000 年代,另一组在 9000 年代) .
library(mapview)
library(sf)
lat <- seq(1, 20, 1)
lon <- lat
value_to_visualize <- c(461000, 1500, 1400, 1450, 1350, 1100, 1400, 2000, 9040, 9060,
9080, 9990, 9995, 5750, 5500, 5400, 5300, 5100, 5050, -60000)
df <- data.frame(lat,lon, value_to_visualize)
df <- st_as_sf(df, coords = c("lon", "lat"), crs = 4326)
m <- mapview(df["value_to_visualize"],
cex = "value_to_visualize",
legend = TRUE,
layer.name = "cfs")
m
library(mapview)
library(sf)
lat <- seq(1, 20, 1)
lon <- lat
value_to_visualize <- c(461000, 1500, 1400, 1450, 1350, 1100, 1400, 2000, 9040, 9060,
9080, 9990, 9995, 5750, 5500, 5400, 5300, 5100, 5050, -60000)
cluster_to_visualize <- dplyr::case_when(value_to_visualize<1000 ~ 1,
value_to_visualize<5000 ~ 3,
value_to_visualize<9000 ~ 5,
value_to_visualize>9000 ~ 7)
df <- data.frame(lat,lon, cluster_to_visualize, value_to_visualize)
df <- st_as_sf(df, coords = c("lon", "lat"), crs = 4326)
m <- mapview(df["value_to_visualize"],
cex = df$cluster_to_visualize,
legend = TRUE,
layer.name = "cfs")
由 reprex package (v0.3.0)
于 2019-06-05 创建
mapview
库是否有办法使用非线性比例绘制点符号的大小?例如,使用几何间隔、自定义间隔向量或基于 Jenks 自然中断方法之类的间隔? (mapview
's '线性设置点大小 'cex'': https://r-spatial.github.io/mapview/articles/articles/mapview_02-advanced.html )
我的用例是绘制河流流量数据的许多点,但由于海洋潮汐在海岸的高值和低值占主导地位,以至于基本上所有非沿海位置似乎都有符号大小(代表河流流量)几乎没有什么不同,而我希望用户可以轻松地将差异可视化,例如小溪与河流(例如,这里的三组值在 1000 年代,另一组在 5000 年代,另一组在 9000 年代) .
library(mapview)
library(sf)
lat <- seq(1, 20, 1)
lon <- lat
value_to_visualize <- c(461000, 1500, 1400, 1450, 1350, 1100, 1400, 2000, 9040, 9060,
9080, 9990, 9995, 5750, 5500, 5400, 5300, 5100, 5050, -60000)
df <- data.frame(lat,lon, value_to_visualize)
df <- st_as_sf(df, coords = c("lon", "lat"), crs = 4326)
m <- mapview(df["value_to_visualize"],
cex = "value_to_visualize",
legend = TRUE,
layer.name = "cfs")
m
library(mapview)
library(sf)
lat <- seq(1, 20, 1)
lon <- lat
value_to_visualize <- c(461000, 1500, 1400, 1450, 1350, 1100, 1400, 2000, 9040, 9060,
9080, 9990, 9995, 5750, 5500, 5400, 5300, 5100, 5050, -60000)
cluster_to_visualize <- dplyr::case_when(value_to_visualize<1000 ~ 1,
value_to_visualize<5000 ~ 3,
value_to_visualize<9000 ~ 5,
value_to_visualize>9000 ~ 7)
df <- data.frame(lat,lon, cluster_to_visualize, value_to_visualize)
df <- st_as_sf(df, coords = c("lon", "lat"), crs = 4326)
m <- mapview(df["value_to_visualize"],
cex = df$cluster_to_visualize,
legend = TRUE,
layer.name = "cfs")
由 reprex package (v0.3.0)
于 2019-06-05 创建