Skip to content

Releases: metrumresearchgroup/pmplots

pmplots 0.6.1

Choose a tag to compare

@kylebaron kylebaron released this 01 Jun 15:56
1f13a7f

Bugs fixed

  • Fixed a bug introduced in #124, where a hard-coded "ID" was mistakenly
    replaced by a call to pm_col_tad() rather than pm_col_id(). (#131)

pmplots 0.6.0

Choose a tag to compare

@kylebaron kylebaron released this 20 May 18:31
adb6b8c
  • A new family of functions lets you update axis and aesthetic labels on plots
    after they are created, looking up column names in a named list or yspec
    object. (#122)

    • pm_gg_labs() builds a label object that can be added (+) to any gg
      object to update axis and aesthetic labels based on the mapped column names.
      It also accepts x_break, y_break, and var_break arguments for
      inserting line breaks into long labels.
    • pm_relabel() is a generic that applies pm_gg_labs() to a gg object,
      a patchwork object (e.g., from eta_covariate() or npde_panel()), or a
      list of gg objects.
    • pmp_relabel_wrap() relabels facet strip labels in plots produced by
      wrap_* functions (e.g., wrap_eta_cont(), wrap_cont_cont()), including
      optional f_break and unit_break arguments for wrapping long strip labels.
    • pmp_relabel_pairs() relabels strip and axis labels in pairs plots (e.g.,
      from eta_pairs()).
    • relabel_at() applies relabeling to specific plots in a named list,
      selected by exact name or regular expression.
    • pm_label_columns() attaches per-column labels to a data frame from a named
      list or yspec object; pm_label_rm() removes them. When a data frame
      labeled this way is passed to a wrap_* function with use_labels = TRUE
      (now the default), the stored labels are used as facet strip titles.
    • pm_gg_break() and pm_gg_break_aes() will break an established aesthetic
      label across two lines; pm_gg_break() identifies labels to break by
      variable name while pm_gg_break_aes() identifies labels to break by
      aesthetic name.
    • pm_label_break() is a ggplot2 labeller function that wraps facet labels
      at a specified character width, for use with facet_wrap(labeller = ...).
  • A new aliasing system lets you globally redirect the canonical column names
    assumed by pmplots to the names actually present in your data. (#124)

    • pm_set_aliases() registers one or more alias = canonical pairs (e.g.,
      pm_set_aliases(TAFD = TIME) redirects every place pmplots would look for
      TIME to TAFD instead). Only columns returned by pm_show_canonical()
      can be aliased.
    • pm_aliases() prints currently active aliases; pm_clear_aliases() removes
      them all; pm_show_canonical() lists which column names can be aliased.
    • pm_col_id() returns the subject identifier column name (defaults to "ID";
      controlled globally via options(mrg.id_col = ...)). pm_col_tad() returns
      the time-after-dose column name with alias support. Both are now used
      internally wherever pmplots previously hard-coded "ID" or "TAD".
  • eta_covariate(), eta_covariate_list(), npde_covariate(),
    npde_covariate_list(), cwres_covariate(), cwres_covariate_list(), and
    cont_cat_panel() gain a points argument that is forwarded to boxwork()
    when a categorical covariate column is plotted as a boxplot. (#126)

  • boxwork() (and downstream functions such as pm_box(), cont_cat(), and
    the eta_cat() / npde_cat() families) accept fill = NULL to suppress the
    default fill, leaving the returned plot open to extension with aes(fill = ...) for grouping by a third variable. (#125)

  • Minimum ggplot2 version is now 3.5.2. (#122)

  • Minimum R version is now 4.1.0. (#122)

pmplots 0.5.2

Choose a tag to compare

@kylebaron kylebaron released this 11 Oct 15:01
32e8f62

Internal compatibility changes

  • Fix some test failures related to ggplot2 version 4.0 (#117).

  • Add S4 as optional dependency to silence R CMD check warning (#117).

  • Prefer ggplot2::is_ggplot() when available (#115).

  • Update CI and make tests compatible with GGally 2.3.0 (#114).

pmplots 0.5.1

Choose a tag to compare

@kylebaron kylebaron released this 04 Oct 13:53
6da1633

Bugs fixed

  • eta_covariate() now calls eta_cont() rather than eta_cat() when data for
    the x-axis is integer, fixing an error that was generated from eta_cat(),
    which always expects factor, character, or logical; other internal
    updates have been made to ensure consistent treatment of integer data as
    continuous rather than discrete (#104).

pmplots_0.5.1.scorecard.pdf
pmplots_0.5.1.tar.gz

pmplots 0.5.0

Choose a tag to compare

@kylebaron kylebaron released this 22 Jul 15:04
f542795
  • 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).

scores:
{
  "testing": {
    "check": 1,
    "covr": 0.859
  },
  "documentation": {
    "has_vignettes": 1,
    "has_website": 1,
    "has_news": 1
  },
  "maintenance": {
    "has_maintainer": 1,
    "news_current": 1
  },
  "transparency": {
    "has_source_control": 1,
    "has_bug_reports_url": 1
  }
}

pmplots 0.4.1

Choose a tag to compare

@kylebaron kylebaron released this 22 May 16:40
3739e7d
  • 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).

Bugs fixed

  • Fixed a bug where the wrong y-axis title was getting used in cwres_covariate()
    (#89).

pmplots 0.4.0

Choose a tag to compare

@kylebaron kylebaron released this 07 Feb 19:32
38530f3
  • Add a series of functions for standardized, paneled displays (#77, #81).

    • 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).

pmplots 0.3.7

Choose a tag to compare

@kylebaron kylebaron released this 14 Aug 15:58
a43543a

Bugs fixed

  • Fix bug where density line was not being drawn by default over npde and
    cwres histograms; the bug came about from incomplete transition to
    changes introduced in ggplot2 v3.4.0 (#74, #75).

pmplots 0.3.6

Choose a tag to compare

@kylebaron kylebaron released this 18 Jan 22:04
dbcb989
  • Update plotting code to work with new ggplot2 behavior introduced
    in version 3.4.0; pmplots now depends on ggplot2 version 3.4.0
    or greater (#71).

pmplots 0.3.5

Choose a tag to compare

@kylebaron kylebaron released this 16 May 13:54
1680759
  • 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).