# Plots Density Distributions of PIT-values for Global Calibration Diagnostics

Source:`R/gg_PIT_local.R`

`gg_PIT_local.Rd`

A function based on ggplot2 to observe the density of PIT-values locally. It is recommended
to use PIT-values obtained via the `PIT_local`

function from this package or an object of
equivalent format. For advanced customization of the plot layers, refer to the ggplot2 User Guide.This function also tests the PIT-values
for uniformity using the Kolmogorov-Smirnov test (`ks.test`

). The p-value from the test is printed on the plot if `facet`

is set to `TRUE`

.

## Arguments

- pit_local
A tibble with five columns: "part", "y_cal", "y_hat", "pit", and "n", representing the partitions, calibration data, predicted values, PIT-values, and the count of observations, respectively.

- alpha
Numeric value between 0 and 1 indicating the transparency of the plot fill. Default is set to 0.4.

- linewidth
Integer specifying the linewidth of the density line. Default is set to 1.

- pal
A character string specifying the RColorBrewer palette to be used for coloring the plot. Default is "Set2".

- facet
Logical indicating whether to use

`facet_wrap()`

to separate different covariate regions in the visualization. If TRUE, the p-value from the Kolmogorov-Smirnov test is printed on the plot.

## Value

A `ggplot`

object representing the local density distributions of PIT-values,
which can be further customized through ggplot2 functions.

## Examples

```
n <- 10000
mu <- function(x1){
10 + 5*x1^2
}
sigma_v <- function(x1){
30*x1
}
x <- runif(n, 2, 20)
y <- rnorm(n, mu(x), sigma_v(x))
x_train <- x[1:(n*0.8)]
y_train <- y[1:(n*0.8)]
x_cal <- x[(n*0.8+1):n]
y_cal <- y[(n*0.8+1):n]
model <- lm(y_train ~ x_train)
y_hat <- predict(model, newdata=data.frame(x_train=x_cal))
MSE_cal <- mean((y_hat - y_cal)^2)
pit_local <- PIT_local(xcal = x_cal, ycal=y_cal, yhat=y_hat, mse=MSE_cal)
gg_PIT_local(pit_local)
gg_PIT_local(pit_local, facet=TRUE)
```