This is the development version of riskyr available at https://github.com/hneth/riskyr/. [2026-01-08]
This version adds functionality and details, and fixes some bugs.
Changes since last release:
plot_curve() (to compare PPV and NPV curves to corresponding baselines)README and online documentationriskyr 0.5.0 was released on CRAN on 2025-09-15. This version fixes minor issues for CRAN compatibility.
Changes since last release:
Remove experimental code
Package maintenance:
README and online documentationUpdated citation info (using bibentry() for CRAN compatibility)
Use hexagon version of logo
The current development version of riskyr is available at https://github.com/hneth/riskyr/.
riskyr 0.4.0 was released on CRAN on August 15, 2022.
Changes since last release:
Enable sampling when computing freq from prob (i.e., by description, given N and 3 essential probabilities) [2021-03]:
sample argument to comp_freq(), comp_freq_prob(), and riskyr();sample argument to 6 key plots:plot_area(), plot_bar(), plot_fnet(), plot_icons(), plot_prism(), and plot_tab().Allow conversions/translations between data and descriptions:
write_popu() creates population data from a description (a riskyr scenario);read_popu() creates a description (a riskyr scenario) from population data.Add a function for plotting cumulative risk curves:
plot_crisk() plots curves and auxiliary information for visualizing cumulative risks and risk increments;pal_crisk provides a corresponding color palette (as a named vector).FFTrees_riskyr() to convert FFTrees objects into corresponding riskyr objects.main and sub arguments to all plots (and deprecate the previous title_lbl argument).is_matrix() to verify a 2x2 matrix (as a 2x2 numeric contingency table).is_integer() to verify integer values.plot_bar() that caused incorrect bar labels.README.md and all vignettes to https://riskyr.org/.plot_prism() to reduce overlaps.txt_TF to avoid confusion, as "True condition" (i.e., X) was FALSE (now "absent") for "True negatives" (TN/cr cases).riskyr 0.3.0 was released on CRAN on March\ 23, 2021.
Changes since last release:
plot_fnet() for plotting frequency nets (Binder et al., 2020) [2020-12].Change default setting of mar_notes in all plotting functions:
Using mar_notes = FALSE as those details are not needed and can be distracting in visualizations.
Change default arguments for plot_area() and plot_tab():
Change default settings from f_lbl_hd = "abb" to f_lbl_hd = "nam" (as this makes more sense for riskyrApp).
New options for plot_curve():
Plotting probability curves as a function of prevalence does not require any specific prevalence value.
Thus, setting the prev argument to either NA or to a vector of several probabilities is now supported.
Setting the new prev_range argument to a range within c(0, 1) allows zooming into more specific ranges of prev values (on x-axis).
New options for plot_plane():
Plotting a probability plane as a function of sensitivity and specificity does not require specifying all values.
Thus, setting the sens and spec arguments to either NA or to a vector of several probabilities is now supported.
Setting the new sens_range and spec_range arguments to ranges within c(0, 1) allows zooming into more specific ranges of sens values (on x-axis) and spec values (on y-axis).
New options for plot_prism():
Use the new p_lwd and p_scale arguments to allow scaling the widths of probability links by current probability values.
In data: Remove data files df_scenarios.RData and df_scenarios.csv, as they were redundant to df_scenarios.rda (loaded from \data).
Improve make_cond_lbl() to allow for NA or vectors of several values (for prev, sens, and spec).
Add is_prob_range() function to verify a range of two probability values (to check new arguments of plot_curve() and plot_plane()).
Using colors of pal for fill colors of symbols in plot_icon().
Add more color palettes:
pal_bwp (a strict b+w color palette suited for printing purposes) and corresponding special cases to major plotting functions.pal_unikn (based on color definitions of the unikn package).Changes to color palettes:
pal[["bg"]] to all palettes and plots (to preempt different system defaults).pal_mod -- rather than pal_mbw -- as default color scheme pal (to highlight cond_true and dec_pos cases in default plots).Add reference to article on theoretical background (Neth et al., 2021).
Bug fix in plot_prism(): Allow plotting simple trees for nchar(by) == 2.
Bug fix in plot_icons(): Enforced 2 different symbol types for icon arrays with a binary perspective (by = cd or dc or ac).
riskyr 0.2.0 was released on CRAN on January 03, 2019.
Changes since last release:
Introduce riskyrApp version:
To use selected riskyr functions without the need for coding
an updated version of riskyrApp is available
at https://github.com/hneth/riskyrApp/ (R Shiny code) and
at https://riskyr.org/ (interactive online version).
Using pkgdown:
Provide package documentation online at https://hneth.github.io/riskyr/ (latest release version) and https://hneth.github.io/riskyr/dev/ (current development version).
Retiring obsolete functions:
The plotting functions plot_fnet() and plot_tree() are replaced by plot_prism(), and plot_mosaic() is replaced by plot_area(). This improves functionality (e.g., by providing more consistent options across different plotting functions) and removes dependencies on external packages.
New plot_prism() function:
Show a scenario as double frequency tree (by 3 x 2 perspectives) or a frequency tree (in 3 perspectives) with many additional options; combines and replaces the older plot_fnet() and plot_tree() functions (and removes dependency on the diagram package).
New plot_area() function:
Show a scenario as a mosaic plot of relative proportions (in 3 x 2 x 2 possible versions, with many additional options); replaces the older plot_mosaic() function (and removes dependencies on the grid and vcd packages).
New plot_tab() function:
Show a scenario as contingency table of frequencies (with row and column sums, and options for showing probabilities);
a variant of plot_area() that does not scale area sizes.
New plot_bar() function:
Show scenario frequencies as vertical bars (in various configurations).
Create plot_util.R collection of graphical utility functions:
Define a new box object type and various functions for plotting, labeling, and linking them in graphs
(to remove dependencies on and limitations imposed by other packages).
Update riskyr() function:
As an alternative to providing 3 essential frequencies, it is now possible to define a scenario from 4 essential frequencies (and check for consistency with given probabilities).
Improve plot_icons() function:
Show icons separated into 2 subsets by 3 perspectives (condition, decision, accuracy), using the same by argument as the other plotting functions.
Improve plot_curve() and plot_plane() functions:
Update variable names (to snake_case) and add arguments (e.g., col_pal, lbl_txt mar_notes, etc.) for consistency with newer plotting functions.
Add scale argument:
The new plotting functions feature a scale argument that allows scaling the size or areas of boxes either by (exact) probability or by (possibly rounded) frequency. When using scale = "f", the probabilities shown are also re-computed from (possibly rounded) frequencies.
Improve plot_fnet() function:
Change argument box.cex to cex.lbl to ensure consistency with plot_curves() and plot_plane() (and use it to scale arrow labels accordingly). Add a warning when using deprecated argument.
Improve plot_mosaic() function:
Change Boolean vsplit argument to by = "cd" vs. by = "dc" to ensure consistency with plot_fnet() and plot_tree(). Add a warning when using deprecated argument.
Improve mar_notes and plot_mar arguments:
Use consistent plot margins and options for showing margin notes for all plots.
Improve pal and freq arguments:
Use more consistent color and frequency names (e.g., cond_true, dec_pos, and dec_cor are now names of frequencies and the colors corresponding to these frequencies).
Improve freq object:
Add a 3rd perspective (by accuracy or by correspondence of decision to condition) and corresponding frequency pair of dec.cor and dec.err (i.e., hi + cr vs. mi + fa as the diagonal of 4 SDT cases). This increases the number of frequencies in freq from 9 to 11. Also added corresponding labels in init_txt.R and colors in init_pal.R.
Improve prob object:
Include accuracy metrics in probabilities (in prob and summary functions).
Improve pal and txt objects:
Add multiple color palettes and text labeling schemes (see ?pal and ?txt for details).
Improve read_popu() function:
Read a data frame popu and interpret is as a riskyr scenario, allows creating scenarios from raw data.
Add comp_accu.R file:
Compute exact accuracy values (not approximations, when using comp_accu_freq on rounded freq values) by using the new function comp_accu_prob() to compute the list accu from probabilities. Signal rounding when showing accuracy based on rounded frequencies in plots (when show.accu == TRUE and round == TRUE).
More consistent argument and variable names (using snake_case).
Many additions and corrections in documentation, examples, and vignettes.
plot_icons(): Bug fix to also swap symbols in legend when the symbol order is changed manually.
txt_def: Simplify some default text labels (e.g., for current population, condition, and decision).
.onAttach: Cast dice to display probabilistic (i.e., risk-related) start-up messages.
riskyr 0.1.0 was released on CRAN on February 19, 2018.
To cite riskyr in derivations and publications please use:
The following article provides details on the conceptual and theoretical background:
[NEWS.md updated on 2026-01-08.]