Description
'ggplot2' Friendly Isotonic or Monotonic Regression Curves.
Description
Provides stat_isotonic() to add weighted univariate isotonic regression curves.
README.md
ggisotonic
ggisotonic
introduces a ggplot layer stat_isotonic
to add isotonic or monotonic regression curves similar to ggplot2::geom_smooth
.
Installation
install.packages("ggisotonic")
library("ggisotonic")
You can install the released version of ggisotonic from github with:
remotes::install_github("talegari/ggisotonic")
Example
library("ggplot2")
set.seed(100)
dataset = data.frame(x = sort(runif(1e2)),
y = c(rnorm(1e2/2), rnorm(1e2/2, mean = 4)),
w = sample(1:3, 1e2, replace = TRUE)
)
print(head(dataset))
#> x y w
#> 1 0.03014575 -0.4470622 3
#> 2 0.03780258 -1.7385979 2
#> 3 0.05638315 0.1788648 2
#> 4 0.09151028 1.8974657 3
#> 5 0.12348723 -2.2719255 3
#> 6 0.12523909 0.9804641 2
# plot isotonic regression line
ggplot(dataset, aes(x = x, y = y)) +
geom_point() +
stat_isotonic()
# plot weighted isotonic regression line along with facets
ggplot(dataset, aes(x = x, y = y)) +
geom_point() +
stat_isotonic(aes(w = w), color = 'red', size = 1.5, show.legend = FALSE) +
facet_wrap(w ~ .)