sdmTMB models fit with regular (non-delta) families can be passed to
`visreg::visreg()`

or `visreg::visreg2d()`

directly. Examples are shown
below. Delta models can use the helper functions `visreg_delta()`

or
`visreg2d_delta()`

described here.

- object
Fit from

`sdmTMB()`

- ...
Any arguments passed to

`visreg::visreg()`

or`visreg::visreg2d()`

- model
1st or 2nd delta model

A plot from the visreg package. Optionally, the data plotted invisibly if
`plot = FALSE`

. This is useful if you want to make your own plot after.

Note the residuals are currently randomized quantile residuals,
*not* deviance residuals as is usual for GLMs with visreg.

```
if (inla_installed() &&
require("ggplot2", quietly = TRUE) &&
require("visreg", quietly = TRUE)) {
pcod_2011$fyear <- as.factor(pcod_2011$year)
fit <- sdmTMB(
density ~ s(depth_scaled) + fyear,
data = pcod_2011, mesh = pcod_mesh_2011,
spatial = "off",
family = tweedie()
)
visreg::visreg(fit, xvar = "depth_scaled")
visreg::visreg(fit, xvar = "fyear")
visreg::visreg2d(fit, xvar = "fyear", yvar = "depth_scaled")
# \donttest{
visreg::visreg(fit, xvar = "depth_scaled", scale = "response")
v <- visreg::visreg(fit, xvar = "depth_scaled")
head(v$fit)
# now use ggplot2 etc. if desired
# Delta model example:
fit_dg <- sdmTMB(
density ~ s(depth_scaled, year, k = 8),
data = pcod_2011, mesh = pcod_mesh_2011,
spatial = "off",
family = delta_gamma()
)
visreg_delta(fit_dg, xvar = "depth_scaled", model = 1, gg = TRUE)
visreg_delta(fit_dg, xvar = "depth_scaled", model = 2, gg = TRUE)
visreg_delta(fit_dg,
xvar = "depth_scaled", model = 1,
scale = "response", gg = TRUE
)
visreg_delta(fit_dg,
xvar = "depth_scaled", model = 2,
scale = "response"
)
visreg_delta(fit_dg,
xvar = "depth_scaled", model = 2,
scale = "response", gg = TRUE, rug = FALSE
)
visreg2d_delta(fit_dg,
xvar = "depth_scaled", yvar = "year",
model = 2, scale = "response"
)
visreg2d_delta(fit_dg,
xvar = "depth_scaled", yvar = "year",
model = 1, scale = "response", plot.type = "persp"
)
visreg2d_delta(fit_dg,
xvar = "depth_scaled", yvar = "year",
model = 2, scale = "response", plot.type = "gg"
)
# }
}
```