see is the plotting layer for the easystats family
:art: Visualisation toolbox for beautiful and publication-ready figures
At a glance
- What is it?
- The see package exists to solve one problem in R statistics. The easystats packages return numeric summaries of model parameters and performance, and see turns those summaries into plots, mostly of the diagnostic kind, without asking you to learn a new plotting vocabulary for each package. What it produces are ordinary ggplot2 objects, so the last mile of any figure is still yours.
- Who is it for?
- see suits an R user who has adopted the easystats packages and finds their output hard to read as numbers, because the plotting methods are per package and the results are ordinary ggplot objects you can keep adjusting.
- Can I use it commercially?
- Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
- Is it still maintained?
- Yes. The repository last received commits 4 days ago.
- What is it written in?
- Mainly R, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 22, 2026, and from our analysis. They are not legal advice.
Editorial analysis
Numbers first, pictures second
The positioning sentence in the readme is that easystats is a collection of packages that operate in synergy to provide a consistent and intuitive syntax when working with statistical models in R, and that most of them return comprehensive numeric summaries of model parameters and performance. The see package complements those summaries with a host of functions and tools to produce publication ready visualisations for model parameters, predictions and performance diagnostics. That division is the design. Each easystats package is good at its own arithmetic, and see is the layer that makes the results legible, which is a different job and one that would otherwise be repeated once per package. The readme frames it as helping users use visualisation for more informative, communicable and well rounded scientific reporting, and the package is a core pillar of the easystats ecosystem rather than an optional extra.
Three install routes, and the difference matters
The installation table gives three options and the difference between them is worth knowing before you pick one. The release comes from CRAN, the development versions come from r-universe, which is the rOpenSci service, and the other development route is straight from GitHub. As code blocks they are:
install.packages("see")
install.packages("see", repos = "https://easystats.r-universe.dev")
remotes::install_github("easystats/see")Once installed you load it with `library("see")`, but the readme tips that using `library(easystats)` instead pulls in every feature of the ecosystem, and that `easystats::install_latest()` is the way to stay current. The package also has a Journal of Open Source Software paper with a DOI badge, and it is on CRAN with download badges, so it is a published research tool rather than a script someone threw together for a paper.
Every plot it makes is a ggplot object
The most useful property of see is stated almost in passing in the parameters section. As see outputs objects of class `ggplot`, ggplot2 functions can be added as layers to the plot in the same way as with any other ggplot2 visualisation, and the example adds a title with `labs()` from ggplot2. The example itself is short, fitting a linear model, converting the result with the parameters package and plotting it:
library(parameters)
library(see)
model <- lm(wt ~ am * cyl, data = mtcars)
plot(parameters(model)) +
ggplot2::labs(title = "A Dot-and-Whisker Plot")That last line is the point of the whole package, because a diagnostic plot that you cannot restyle is a screenshot rather than a figure, and a figure you cannot restyle is not publication ready. Since the output is a ggplot, the theme, the labels, the size and the export are all still under your control when the figure is nearly finished.
One plotting method per easystats package
The readme walks through one or two methods for each package in the family, and the set tells you what see covers. For parameters, the model summaries become a dot and whisker plot of the extracted regression estimates, so you can see the estimates and their uncertainty instead of a table of coefficients. For bayestestR, the plotting methods cover Bayesian models, including the Highest Density Interval, and the example fits a Bayesian regression with rstanarm and plots the result for a set of credible interval widths. For performance, the package checks regression model assumptions and see visualises those checks, for instance the normality of residuals, with the example passing the fitted model to the relevant performance function and then plotting the check as a quantile quantile plot. For effectsize, the effect size metrics are plotted so the magnitude and the uncertainty of an effect are visible, with omega squared as the example. For modelbased, the model based estimates and predictions are visualised, and that example needs emmeans installed first.
The vignettes are the real documentation
Each section of the readme ends by pointing at a vignette for the package in question, and the pattern is the same every time, the readme gives you one or two methods and the vignette gives you the full set. The modelbased section is the clearest example, since the snippet is cut off mid statement in the readme itself, which is exactly the moment when you want the vignette rather than the readme. The site also carries a features page with the full reference index and a blog, and the readme explicitly invites readers to explore the examples on the package website rather than treating the readme as the complete list. For a package whose value is breadth, the vignettes are where the breadth is, and the readme is a sample of it.
The repository is a research package, not a script collection
The top level of the tree shows what it takes to maintain an R package properly, and the list is long. There is the `DESCRIPTION` and the `NAMESPACE`, the `R/` directory with the code, `man/` for the help pages, `vignettes/` for the articles, `inst/` for the shipped assets, `tests/` for the test suite, and `paper/` for the journal article, which is the source of the JOSS paper. Then there is the infrastructure around publication, with `pkgdown/` for the documentation site, `revdep/` for the reverse dependency checks, `cran-comments.md` for the submission notes, `apa.csl` for the citation style file, and `NEWS.md` for the changelog. There is also a `WIP/` directory, which is a nice and slightly unusual admission, and an `air.toml` and a `.lintr` configuration for the formatting and linting of the R sources.
Versioning, licence and what a reader should check
The releases are 0.15.0 from 2026-10-16, 0.14.2 from 2026-09-01 and 0.14.1 from 2026-06-29, and the last push to the repository was on 2026-10-19, so the package is actively maintained and the CRAN and development versions are close together. The licence is the one item to sort out before you build on it. The repository records a custom licence that GitHub could not classify, and the tree holds both a `LICENSE` file and a `LICENSE.md`, which suggests the terms are more specific than a standard permissive licence and worth reading. The third check is the one that catches people out in R, that the examples in the readme assume the other easystats packages are installed, since a plot method for parameters is only useful if parameters is there, and the readme is explicit that the modelbased example needs emmeans first.
Editorial conclusion
see suits an R user who has adopted the easystats packages and finds their output hard to read as numbers, because the plotting methods are per package and the results are ordinary ggplot objects you can keep adjusting. It is a poor fit if you use one model at a time and write your own plotting code, since the value of see is the consistency across packages, and it is a poor fit if you are offline, since the install routes are CRAN, r-universe and GitHub and the documentation is a website. Before you adopt it, check three things: which installation route you want, since the development versions on r-universe and GitHub move and the CRAN release moves on a different clock, the licence, since the repository records a custom licence that GitHub could not classify alongside a LICENSE.md, and the version, with 0.15.0 published on 2026-10-16 and the last push to the repository on 2026-10-19.
Frequently asked questions
What does the see R package do?
It provides publication ready visualisations for model parameters, predictions and performance diagnostics for the easystats family of packages, most of which otherwise return numeric summaries. The see package is a core pillar of that ecosystem and its outputs are ordinary ggplot2 objects.
How do I install see?
Three routes. The release is on CRAN with `install.packages("see")`, the development version is on r-universe with `install.packages("see", repos = "https://easystats.r-universe.dev")`, and the other development route is `remotes::install_github("easystats/see")`. The readme also suggests `library(easystats)` instead of `library(see)` to get the whole ecosystem.
Can I modify the plots that see produces?
Yes, because the outputs have class ggplot, so ggplot2 functions can be added as layers in the ordinary way. The example in the readme adds a title with `ggplot2::labs()` to a dot and whisker plot of regression estimates, which is what makes the result a figure rather than a fixed image.
Which easystats packages does see have plotting methods for?
The readme demonstrates one or two for each: dot and whisker plots for parameters, Highest Density Interval plots for bayestestR, assumption checks such as residual normality for performance, effect size magnitudes for effectsize, and model based estimates and predictions for modelbased, whose example additionally needs emmeans installed. The full set is in the vignettes.
What licence is see released under?
The repository records a custom licence that GitHub could not classify, with both a LICENSE file and a LICENSE.md in the tree, so the terms are worth reading before you build on it. The package is on CRAN and has a Journal of Open Source Software paper, with version 0.15.0 published on 2026-10-16 and the last push to the repository on 2026-10-19.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/easystats-see)Was this useful?