Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix partial matching + silence R cmd check notes + warnings #853

Merged
merged 8 commits into from
Apr 9, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion NAMESPACE
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ export(opt_tm_lines)
export(opt_tm_polygons)
export(opt_tm_raster)
export(opt_tm_sf)
export(opt_tm_sqaures)
export(opt_tm_squares)
export(opt_tm_symbols)
export(opt_tm_text)
export(providers)
Expand Down
8 changes: 4 additions & 4 deletions R/misc_other.R
Original file line number Diff line number Diff line change
Expand Up @@ -395,7 +395,7 @@ native_to_npc_to_native <- function(x, scale) {
}

}
xy <- xy.coords(x, y, recycle = TRUE)
xy <- grDevices::xy.coords(x, y, recycle = TRUE)
z <- toUnityCoords(xy)
x2 <- z$x
y2 <- z$y
Expand Down Expand Up @@ -434,10 +434,10 @@ native_to_npc_to_native <- function(x, scale) {
#w2 <- w + (h-w) * abs(cos(angles*pi/180))
#h2 <- h + (w-h) * abs(sin(angles*pi/180))

z2 <- xy.coords(xs2, ys2, recycle = TRUE)
z2 <- grDevices::xy.coords(xs2, ys2, recycle = TRUE)
xy2 <- toUserCoords(z2)

list(poly=polygonGrob(unit(xy2$x, "native"), unit(xy2$y, "native"), id=id, gp=rg$gp))
list(poly=polygonGrob(unit(xy2$x, "native"), grid::unit(xy2$y, "native"), id=id, gp=rg$gp))
#list(poly=rectGrob(unit(x, "native"), unit(y, "native"), width = unit(w, "native"), height=unit(h, "native"), gp = rg$gp))
}

Expand All @@ -454,7 +454,7 @@ native_to_npc_to_native <- function(x, scale) {
.editGrob <- function(tg, sel, shiftX, shiftY, angles) {
nt <- length(sel)
angles <- rep(angles, length.out=nt)
if (any(angles!=0)) {
if (any(angles != 0)) {
if (inherits(tg, "rect")) {
tg <- .rectGrob2pathGrob(tg, angles)$poly
}
Expand Down
36 changes: 18 additions & 18 deletions R/misc_pointLabel.R
Original file line number Diff line number Diff line change
@@ -1,44 +1,44 @@
test_rect = function(x, y, width, height, bbx) {
library(grid)
grid.newpage()
# library(grid)
grid::grid.newpage()

asp = tmaptools::get_asp_ratio(bbx)

if (asp > 1) {
pushViewport(viewport(width = unit(1, "snpc"), height = unit(1/asp, "snpc")))
grid::pushViewport(grid::viewport(width = grid::unit(1, "snpc"), height = grid::unit(1/asp, "snpc")))
} else {
pushViewport(viewport(width = unit(asp, "snpc"), height = unit(1, "snpc")))
grid::pushViewport(grid::viewport(width = grid::unit(asp, "snpc"), height = grid::unit(1, "snpc")))
}


pushViewport(viewport(xscale = bbx[c(1,3)], yscale = bbx[c(2,4)]))
grid.rect()
grid::pushViewport(grid::viewport(xscale = bbx[c(1,3)], yscale = bbx[c(2,4)]))
grid::grid.rect()

mapply(function(xi,yi,wi,hi) {
grid.rect(x = unit(xi, "native"), y = unit(yi, "native"), width = unit(wi, "native"), height = unit(hi, "native"), gp = gpar(fill = "orange", col = "black"))
grid::grid.rect(x = grid::unit(xi, "native"), y = grid::unit(yi, "native"), width = grid::unit(wi, "native"), height = grid::unit(hi, "native"), gp = grid::gpar(fill = "orange", col = "black"))
}, x, y, width, height)
upViewport(2)
grid::upViewport(2)
}

test_poly = function(xs, ys, bbx) {
library(grid)
grid.newpage()
# library(grid)
grid::grid.newpage()

asp = tmaptools::get_asp_ratio(bbx)

if (asp > 1) {
pushViewport(viewport(width = unit(1, "snpc"), height = unit(1/asp, "snpc")))
grid::pushViewport(grid::viewport(width = grid::unit(1, "snpc"), height = grid::unit(1/asp, "snpc")))
} else {
pushViewport(viewport(width = unit(asp, "snpc"), height = unit(1, "snpc")))
grid::pushViewport(grid::viewport(width = grid::unit(asp, "snpc"), height = grid::unit(1, "snpc")))
}

pushViewport(viewport(xscale = bbx[c(1,3)], yscale = bbx[c(2,4)]))
grid::pushViewport(grid::viewport(xscale = bbx[c(1,3)], yscale = bbx[c(2,4)]))

grid.rect()
grid::grid.rect()

grid.path(x = unit(xs, "native"), y = unit(ys, "native"), gp = gpar(fill = "orange", col = "black"))
grid::grid.path(x = grid::unit(xs, "native"), y = grid::unit(ys, "native"), gp = grid::gpar(fill = "orange", col = "black"))

upViewport(2)
grid::upViewport(2)
}

# function adapted from car::pointLabel
Expand Down Expand Up @@ -74,7 +74,7 @@ pointLabel2 <- function (x, y, width, height, bbx,

}

z <- xy.coords(x, y, recycle = TRUE)
z <- grDevices::xy.coords(x, y, recycle = TRUE)
z <- toUnityCoords(z)
x <- z$x
y <- z$y
Expand Down Expand Up @@ -117,7 +117,7 @@ pointLabel2 <- function (x, y, width, height, bbx,
rectv <- width + (0+1i) * height
rectidx1 <- rectidx2 <- array(0, (length(x)^2 - length(x))/2)
k <- 0
for (i in 1:length(x)) for (j in seq(len = (i - 1))) {
for (i in 1:length(x)) for (j in seq_len(i - 1)) {
k <- k + 1
rectidx1[k] <- i
rectidx2[k] <- j
Expand Down
4 changes: 2 additions & 2 deletions R/step1_helper_facets.R
Original file line number Diff line number Diff line change
Expand Up @@ -180,9 +180,9 @@ step1_rearrange_facets = function(tmo, o) {
}
if (length(popup.vars)) add_used_vars(popup.vars)

if (hover != "" && !hover %in% smeta$vars) stop("Incorrect hover label", call. = FALSE)
if (hover != "" && !hover %in% smeta$vars) rlang::arg_match0(hover, smeta$vars, "hover label", error_call = NULL)
if (hover != "") add_used_vars(hover)
if (id != "" && !id %in% smeta$vars) stop("Incorrect id", call. = FALSE)
if (id != "" && !id %in% smeta$vars) rlang::arg_match0(id, smeta$vars, arg_nm = "id", error_call = NULL)
if (id != "") add_used_vars(id)
})
})
Expand Down
2 changes: 1 addition & 1 deletion R/step1_rearrange.R
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ step1_rearrange = function(tmel) {
if (any(is_opt)) for (id in which(is_opt)) {
o2 = oth[[id]]

if ("v3" %in% o2$calls) warning("v3 code detected: as of tmap v4, tm_legend should be specified per visual variable (e.g. with the argument fill.legend of tm_polygons", call. = FALSE)
if ("v3" %in% o2$calls) message("v3 code detected: as of tmap v4, the legend should be specified for each visual variable\n(e.g. with `fill.legend = tm_legend()` inside tm_polygons to control the legend of fill for polygons.", call. = FALSE)

# special case: position, in case c("left", "top") is used
pids = grep(".position", names(o2), fixed = TRUE)
Expand Down
2 changes: 2 additions & 0 deletions R/tm_layers_cartogram.R
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#' @param type,itermax,expansion,inplace,share Additional options
#'
#' @rdname tm_cartogram
#' @name opt_tm_cartogram
#' @param type cartogram type, one of: "cont" for contiguous cartogram, "ncont" for non-contiguous cartogram and "dorling" for Dorling cartograms
Expand Down
4 changes: 2 additions & 2 deletions R/tm_layers_symbols.R
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ opt_tm_bubbles = opt_tm_symbols
#' @rdname tm_symbols
#' @name opt_tm_squares
#' @export
opt_tm_sqaures = opt_tm_symbols
opt_tm_squares = opt_tm_symbols



Expand Down Expand Up @@ -563,7 +563,7 @@ tm_squares = function(size = tm_const(),
zindex = NA,
group = NA,
group.control = "check",
options = opt_tm_sqaures(),
options = opt_tm_squares(),
...) {

args = c(as.list(environment()), list(...))
Expand Down
4 changes: 2 additions & 2 deletions R/tmapChart.R
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ bin_num = function(x1, breaks_def, chart) {
# are breaks (and bin_colors)
predefined = !is.null(breaks_def)

if (is.null(chart$breaks)) {
if (is.null(chart$breaks_def)) {
if (!predefined) {
breaks = pretty(x1)
ids = rep(1L, length(breaks) - 1)
Expand All @@ -112,7 +112,7 @@ bin_num = function(x1, breaks_def, chart) {
ids = 1L:(length(breaks) - 1L)
}
} else {
breaks = chart$breaks
breaks = chart$breaks_def
subbreaks = (all(breaks_def %in% breaks))

break_mids = (breaks[-1] + head(breaks, -1)) / 2
Expand Down
25 changes: 13 additions & 12 deletions R/tmapGridAux.R
Original file line number Diff line number Diff line change
Expand Up @@ -266,7 +266,8 @@ tmapGridGridPrep = function(a, bs, id, o) {
x2 <- x2[!lnsX_emp]
lnsX_proj <- lnsX_proj[!lnsX_emp]
xco <- st_coordinates(lnsX_proj)
co.x.lns <- lapply(unique(xco[,3]), function(i) {
# co.x.lns
co.x <- lapply(unique(xco[,3]), function(i) {
lco <- xco[xco[,3]==i, 1:2]
lco[, 1] <- (lco[, 1]-bbx_orig[1]) / (bbx_orig[3] - bbx_orig[1])
lco[, 2] <- (lco[, 2]-bbx_orig[2]) / (bbx_orig[4] - bbx_orig[2])
Expand All @@ -278,7 +279,7 @@ tmapGridGridPrep = function(a, bs, id, o) {

sel.x <- which(x2 %in% x)
} else {
co.x.lns <- numeric(0)
co.x <- numeric(0)
}

if (lnsSel[2]) {
Expand All @@ -291,7 +292,7 @@ tmapGridGridPrep = function(a, bs, id, o) {
y2 <- y2[!lnsY_emp]
lnsY_proj <- lnsY_proj[!lnsY_emp]
yco <- st_coordinates(lnsY_proj)
co.y.lns <- lapply(unique(yco[,3]), function(i) {
co.y <- lapply(unique(yco[,3]), function(i) {
lco <- yco[yco[,3]==i, 1:2]
lco[, 1] <- (lco[, 1]-bbx_orig[1]) / (bbx_orig[3] - bbx_orig[1])
lco[, 2] <- (lco[, 2]-bbx_orig[2]) / (bbx_orig[4] - bbx_orig[2])
Expand All @@ -303,7 +304,7 @@ tmapGridGridPrep = function(a, bs, id, o) {

sel.y <- which(y2 %in% y)
} else {
co.y.lns <- numeric(0)
co.y <- numeric(0)
}


Expand Down Expand Up @@ -396,7 +397,7 @@ tmapGridGridXLab = function(bi, bbx, facet_row, facet_col, facet_page, o) {

# find coordinates for projected grid labels
if (!is.na(a$crs)) {
glabelsx <- get_gridline_labels(lco=a$co.x.lns[a$sel.x], xax = as.integer(is_top))
glabelsx <- get_gridline_labels(lco=a$co.x[a$sel.x], xax = as.integer(is_top))
cogridx <- glabelsx$cogrid
idsx <- glabelsx$ids
labelsx <- labelsx[idsx]
Expand Down Expand Up @@ -473,7 +474,7 @@ tmapGridGridYLab = function(bi, bbx, facet_row, facet_col, facet_page, o) {

# find coordinates for projected grid labels
if (!is.na(a$crs)) {
glabelsy <- get_gridline_labels(lco=a$co.y.lns[a$sel.y], yax = 0)
glabelsy <- get_gridline_labels(lco=a$co.y[a$sel.y], yax = 0)
cogridy <- glabelsy$cogrid
idsy <- glabelsy$ids
labelsy <- labelsy[idsy]
Expand Down Expand Up @@ -603,7 +604,7 @@ tmapGridGrid = function(bi, bbx, facet_row, facet_col, facet_page, id, pane, gro
# find coordinates for projected grid labels
if (!is.na(a$crs)) {
if (selx) {
glabelsx <- get_gridline_labels(lco=a$co.x.lns[a$sel.x], xax = labelsXw + spacerX+marginX)
glabelsx <- get_gridline_labels(lco=a$co.x[a$sel.x], xax = labelsXw + spacerX+marginX)
cogridx <- glabelsx$cogrid
idsx <- glabelsx$ids
labelsx <- labelsx[idsx]
Expand All @@ -614,7 +615,7 @@ tmapGridGrid = function(bi, bbx, facet_row, facet_col, facet_page, id, pane, gro
# }

if (sely) {
glabelsy <- get_gridline_labels(lco=a$co.y.lns[a$sel.y], yax = labelsYw + spacerY+marginY)
glabelsy <- get_gridline_labels(lco=a$co.y[a$sel.y], yax = labelsYw + spacerY+marginY)
cogridy <- glabelsy$cogrid
idsy <- glabelsy$ids
labelsy <- labelsy[idsy]
Expand Down Expand Up @@ -647,13 +648,13 @@ tmapGridGrid = function(bi, bbx, facet_row, facet_col, facet_page, id, pane, gro
# crop projected grid lines, and extract polylineGrob ingredients
if (!is.na(a$crs)) {
lnsList <- list(
if (any(selx)) st_multilinestring(a$co.x.lns) else NULL,
if (any(sely)) st_multilinestring(a$co.y.lns) else NULL
if (any(selx)) st_multilinestring(a$co.x) else NULL,
if (any(sely)) st_multilinestring(a$co.y) else NULL
)
lnsSel <- !vapply(lnsList, is.null, logical(1))
if (!any(lnsSel)) {
grid.co.x.lns <- numeric(0)
grid.co.y.lns <- numeric(0)
grid.co.x <- numeric(0)
grid.co.y <- numeric(0)
} else {
lns <- st_sf(ID=c("x", "y")[lnsSel], geometry = st_sfc(lnsList[lnsSel], crs = 4326)) # trick for 0-1 coordinates
sf_bbox <- tmaptools::bb_poly(bb(c(labelsYw + spacerY + marginY, labelsXw + spacerX + marginX, 1, 1)), projection = 4326)
Expand Down
2 changes: 1 addition & 1 deletion R/tmapScaleAsIs.R
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ most_common_cat = function(x) {
tab = table(x)
nm = names(tab)[which.max(tab)]
tryCatch({
as(nm, cls)
methods::as(nm, cls)
}, error = function(e) {
nm
})
Expand Down
9 changes: 6 additions & 3 deletions examples/tm_lines.R
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
tm_shape(rivers) +
tm_lines(lwd = "strokelwd", lwd.scale = tm_scale_asis(values.scale = 0.2, value.neutral = 2),
col = "scalerank", col.scale = tm_scale_categorical(values = "seaborn.dark"))
tm_lines(lwd = "strokelwd",
lwd.scale = tm_scale_asis(values.scale = 0.2, value.neutral = 2),
col = "scalerank",
col.scale = tm_scale_categorical(values = "seaborn.dark"))

tm_shape(World) +
tm_lines(col = "continent", col.scale = tm_scale_categorical(values = "seaborn.dark"),
tm_lines(col = "continent",
col.scale = tm_scale_categorical(values = "seaborn.dark"),
lty = "continent",
lwd = 1.5,
lty.legend = tm_legend_combine("col"))
27 changes: 18 additions & 9 deletions examples/tm_symbols.R
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,26 @@ Africa = World[World$continent == "Africa", ]

tm_shape(land) +
tm_raster("cover_cls",
col.scale = tm_scale(values = cols4all::c4a("brewer.pastel1")[c(3,7,7,2,6,1,2,2)]),
col.scale = tm_scale(
values = cols4all::c4a("brewer.pastel1")[c(3,7,7,2,6,1,2,2)]
),
col.legend = tm_legend_hide()) +
tm_shape(rivers) +
tm_lines(lwd = "strokelwd", lwd.scale = tm_scale_asis(values.scale = .3), col = cols4all::c4a("brewer.pastel1")[2]) +
tm_lines(lwd = "strokelwd", lwd.scale = tm_scale_asis(values.scale = .3),
col = cols4all::c4a("brewer.pastel1")[2]) +
tm_shape(Africa, is.main = TRUE) +
tm_borders() +
tm_shape(metroAfrica) +
tm_symbols(fill = "red", shape = "pop2020", size = "pop2020",
size.scale = tm_scale_intervals(breaks = c(1, 2, 5, 10, 15, 20, 25) * 1e6, values.range = c(0.2,2)),
size.scale = tm_scale_intervals(
breaks = c(1, 2, 5, 10, 15, 20, 25) * 1e6,
values.range = c(0.2,2)
),
size.legend = tm_legend("Population in 2020"),
shape.scale = tm_scale_intervals(breaks = c(1, 2, 5, 10, 15, 20, 25) * 1e6, values = c(21, 23, 22, 21, 23, 22)),
shape.scale = tm_scale_intervals(
breaks = c(1, 2, 5, 10, 15, 20, 25) * 1e6,
values = c(21, 23, 22, 21, 23, 22)
),
shape.legend = tm_legend_combine("size")) +
tm_labels("name", options = opt_tm_labels(remove.overlap = FALSE))

Expand Down Expand Up @@ -91,7 +100,7 @@ if (require(ggplot2) && require(dplyr) && require(tidyr) && require(tmaptools) &

grobs2 = grobs
grobs2[[6]] = 21

names(grobs2) <- as.character(NLD_prov$name)
NLD_prov$population[1:5] = 500000
tm_shape(NLD_prov) +
tm_polygons(group = "Provinces") +
Expand Down Expand Up @@ -134,10 +143,10 @@ if (require(ggplot2) && require(dplyr) && require(tidyr) && require(tmaptools) &
geom_point(aes(x=p%%16, y=-(p%/%16), shape=p), size=5, fill="red") +
geom_text(mapping=aes(x=p%%16, y=-(p%/%16+0.25), label=p), size=3) +
scale_shape_identity() +
theme(axis.title=element_blank(),
axis.text=element_blank(),
axis.ticks=element_blank(),
panel.background=element_blank())
theme(axis.title = element_blank(),
axis.text = element_blank(),
axis.ticks = element_blank(),
panel.background = element_blank())
}
}

Expand Down
24 changes: 17 additions & 7 deletions examples/tm_text.R
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ metro$upside_down = ifelse(sf::st_coordinates(metro)[,2] < 0, 180, 0)
tm_shape(metro) +
tm_text(text = "name", size = "pop2020",
angle = "upside_down", size.legend = tm_legend_hide(),
col = "upside_down", col.scale = tm_scale_categorical(values = c("#9900BB", "#228822")),
col = "upside_down",
col.scale = tm_scale_categorical(values = c("#9900BB", "#228822")),
col.legend = tm_legend_hide()) +
tm_title_out("Which Hemisphere?", position = tm_pos_out("center", "top", pos.v = "bottom"))

Expand All @@ -19,17 +20,26 @@ Africa = World[World$continent == "Africa", ]

tm_shape(land) +
tm_raster("cover_cls",
col.scale = tm_scale(values = cols4all::c4a("brewer.pastel1")[c(3,7,7,2,6,1,2,2)]),
col.scale = tm_scale(
values = cols4all::c4a("brewer.pastel1")[c(3,7,7,2,6,1,2,2)]
),
col.legend = tm_legend_hide()) +
tm_shape(rivers) +
tm_lines(lwd = "strokelwd", lwd.scale = tm_scale_asis(values.scale = .3), col = cols4all::c4a("brewer.pastel1")[2]) +
tm_shape(Africa, is.main = TRUE) +
tm_lines(lwd = "strokelwd", lwd.scale = tm_scale_asis(values.scale = .3),
col = cols4all::c4a("brewer.pastel1")[2]) +
tm_shape(Africa, is.main = TRUE) +
tm_borders() +
tm_shape(metroAfrica) +
tm_shape(metroAfrica) +
tm_symbols(fill = "red", shape = "pop2020", size = "pop2020",
size.scale = tm_scale_intervals(breaks = c(1, 2, 5, 10, 15, 20, 25) * 1e6, values.range = c(0.2,2)),
size.scale = tm_scale_intervals(
breaks = c(1, 2, 5, 10, 15, 20, 25) * 1e6,
values.range = c(0.2,2)
),
size.legend = tm_legend("Population in 2020"),
shape.scale = tm_scale_intervals(breaks = c(1, 2, 5, 10, 15, 20, 25) * 1e6, values = c(21, 23, 22, 21, 23, 22)),
shape.scale = tm_scale_intervals(
breaks = c(1, 2, 5, 10, 15, 20, 25) * 1e6,
values = c(21, 23, 22, 21, 23, 22)
),
shape.legend = tm_legend_combine("size")) +
tm_labels("name")

Expand Down
Loading
Loading