Multiple x
and y
can be now be passed as a list
in addition to
character vector (#95).
Vectorized plots (returned as a list of plots) are now named according to the
x
or y
data column (#96).
New function rot_xy()
allows rotation of x- or y-axis tick labels for gg
objects, patchwork
objects, or lists of gg
or patchwork
objects; this
function uses rot_at()
for processing lists (#96).
New function rot_at()
allows rotation of x- or y-axis tick labels of gg
or patchwork
objects or named lists of these objects; the list method
allows rotation of specific plots in the list by matching the name exactly
or through a regular expression (#96).
New function pm_with()
allows arrangement of a named list of plots using
patchwork
syntax (#96).
rot_y()
has been updated with a vertical
argument, similar to existing
argument in rot_x()
(#96).
y-axis for cwres_q()
and npde_q()
changed to remove the word "distribution"
(#92).
pmplots now depends on ggplot2 version 3.5.0 or greater (#86).
Axis titles for conditional weighted residuals are now abbreviated "CWRES" (#83).
cwres_covariate()
(#89).eta_covariate()
creates panel of ETA versus continuous or categorical
covariates.npde_covariate()
creates panel of NPDE versus continuous or categorical
covariates.cwres_covariate()
creates panel of CWRES versus continuous or categorical
covariates.cont_cat_panel()
creates panel of continuous versus categorical covariates.npde_panel()
creates panel of NPDE-based diagnostics.cwres_panel()
creates panel of CWRES-based diagnostics.npde_scatter()
creates panel of NPDE-based scatter plots.cwres_scatter()
creates panel of CWRES-based scatter plots.npde_hist_q()
creates NPDE histogram and Q-Q plot in a panel.cwres_hist_q()
creates CWRES histogram and Q-Q plot in a panel.Component plots can be returned in a list which can be arranged via
with()
.
pm_grid()
gains tag_levels
argument that gets passed to
patchwork::plot_annotation()
(#80).
ggplot2
v3.4.0 (#74, #75).ggplot2
behavior introduced
in version 3.4.0; pmplots
now depends on ggplot2
version 3.4.0
or greater (#71).Functions generating default axis titles now have arguments so that interpolated customizations can happen when calling the function outside of a plot context (#57).
dv_pred_ipred()
heavily refactored for functionality and style; see the
PR for significant changes / improvements (#54).
Put stories in yaml format; add script to build validation docs from the yaml file (#58, #59).
pm_grid()
now uses 'patchwork' to arrange plots; 'patchwork' becomes
a suggested package and 'cowplot' is dropped #49.
scatt()
gains alpha
argument with default provided by pm_opts$scatter.alpha
#42, #48.
split_plot()
gains labeller
argument which gets passed to facet_wrap()
#43, #47.
label_tex()
replaces label_parse_label()
for labeling facets via
latex2exp::TeX()
; label_parse_label()
remains as an alias #47.
label_fun
argument for wrap plots is renamed labeller
; applies to
the following plots: wrap_cont_cont()
, wrap_hist()
, wrap_cont_cat()
,
and any plot built on these (see ?wrap_plots
) #43, #47.
Fix bug where points overlaid on boxplots were jittered in both directions; jitter is now only in x-direction #45, #46.
Add vignettes into package (#37)
Re-work README (#37)
pairs_plot()
and eta_pairs()
now will properly call user-supplied
functions for creating panels on the upper and lower triangle
(#2)
The upper panels in pairs_plot()
and eta_pairs()
are not customizable
using pm_opts()
(#6)
The reference lines at -3 and 3 on the y-axis of npde
plots are no longer
drawn by default (#22)
dv_pred()
and dv_ipred()
gain an argument (logbr
) that lets the user
pick the interval for tick marks when loglog
plots are drawn; options are:
"full" (full log units - 10, 100 ,1000), "half" (half log units - 30, 100,
300) or "null" (let ggplot decide); the default is now to show full log unit
breaks rather than half log unit breaks (#21)
pairs_plot()
gains an argument (lower_plot
) which lets the user
more easily customize the scatter plot that usually appears on the lower
triangle (#26)
wrap_cont_cat()
is a new wrap function that lets the user make
faceted plots of continuous variables versus categorical variables;
(#14)
label_fun
function to pairs_plot
, wrap_cont_cont
and
wrap_hist
allowing strip labels to incorporate
expressions via pmplots:::label_parse
#45parse_label
and label_parse_label
are exportedcol_label
so that punctuation in col//label
does not
result in error #72?pm_axis_functions
)npde_time
, npde_tad
and npde_tafd
,
npde_pred
, npde_hist
, and npde_q
functionsres_hist
, wres_hist
, and cwres_hist
along with
the more general cont_hist
functions for plotting residuals
or other continuous variables as histogramseta_cont
, (cw)res_cont
, eta_cat
, and
(cw)res_cat
; see function help for more details about
what this meanscont_cont_list
and cont_cat_list
as vectorized
versions of cont_cont
and cont_cat
pairs_plot
as a more-generic front end to
ggpairs
eta_pairs
and pairs_plot
to GGally::ggpairs
; this allows users to
pass in a mapping for colors etcpairs_plot
to allow users to pass in
custom functions for upper
and lower
lower
function in pairs_plot
, the mapping object is checked
for smooth_color
and smooth_lty
for more control over
the smoothing lineshk
argument to pairs_plot
xs
and ys
information; axis titles respect user-supplied name
settings for scalesrot_x
and rot_y
to rotate
tick labels scales
argument to dv_pred
and dv_ipred
; by default
(scales = "fixed"
), the x- and y-axis have the same limits;
when scales = "free"
limits are chosen by ggplot2 and will likely
be different for x- and y-axissplit_plot
when splitting by a factor that
doesn't have all level presentwres_q
related to indexing a tibblepm_theme
,
pm_abline
, pm_smooth
, pm_hline
, pm_histogram
; these functions
help make the plots look consistent with other plots if you are
making reference lines, smooths, etc; pm_theme
is still just a wrapper
around theme_bw()
eta_pairs
dispatches to eta_hist
when there is only one eta
in the mix #14cwres
, wres
, and npde
labs
rather than via scale_(x|y)_continuous
#23col_label
specification can now be automatically parsed to
generate expressions to be rendered with plotmath; if two $
symbols
are found in the title, pmplots will try to load the latex2exp
namespace and pass the axis title through latex2exp::TeX
. Otherwise,
if the axis title begins with !!
, then pmplots will parse the
column title to generate the expressionpm_grid
eta_pairs
#17split_plot
now accepts a grouped
data frame as input; the list of plots
will be generated by splitting the data frame on grouping column #32wrap_cont_cont
, wrap_cont_time
, wrap_res_time
,
wrap_eta_cont
, wrap_hist
, and wrap_dv_preds
logbr3
so that the values are sorted; this
fixes an issue where the grid lines were not properly
displayed with these breaksdv_time
and dv_pred
when
modifying the x-scale and y-scale through
xs and ys argumentsdv_time
and dv_pred
so that
breaks are at half-log units when log = TRUE
or
loglog = TRUE
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.