Skip to contents

[Stable]

A widget that generates a bar chart of group-level metric results, plotting groups on the x-axis and the outcome (numerator, denominator, metric, or score) on the y-axis.

Usage

Widget_BarChart(
  dfResults,
  lMetric = NULL,
  dfGroups = NULL,
  vThreshold = NULL,
  strOutcome = "Score",
  vOutcomeOptions = c("Score", "Metric", "Numerator"),
  bAddGroupSelect = TRUE,
  strShinyGroupSelectID = "GroupID",
  strOutputLabel = paste0(fontawesome::fa("chart-simple", fill = "#337ab7"),
    "  Bar Chart"),
  bDebug = FALSE,
  ...
)

Arguments

dfResults

data.frame A stacked summary of analysis pipeline output. Created by passing a list of results returned by gsm.core::Summarize() to gsm.reporting::BindResults(). Expected columns: GroupID, GroupLevel, Numerator, Denominator, Metric, Score, Flag, MetricID, StudyID, SnapshotDate.

lMetric

list Metric-specific metadata for use in charts and reporting. Created by passing an lWorkflow object to gsm.reporting::MakeMetric() and turning it into a list. Expected columns: File,MetricID, Group, Abbreviation, Metric, Numerator, Denominator, Model, Score, and strThreshold. For more details see the Data Model vignette: vignette("DataModel", package = "gsm.core").

dfGroups

data.frame Group-level metadata dictionary. Created by passing CTMS site and study data to gsm.mapping::MakeLongMeta(). Expected columns: GroupID, GroupLevel, Param, Value.

vThreshold

numeric Threshold values.

strOutcome

character Outcome variable. Default: 'Score'.

vOutcomeOptions

character Vector of outcome options for the y-axis dropdown. Default: c("Score", "Metric", "Numerator"). Must include strOutcome.

bAddGroupSelect

logical Add a dropdown to highlight sites? Default: TRUE.

strShinyGroupSelectID

character Element ID of group select in Shiny context. Default: 'GroupID'.

strOutputLabel

character Label describing the output object, which is assigned to the output_label attribute of the output object and appears in the report generated by gsm.kri::Report_KRI().

bDebug

logical Print debug messages? Default: FALSE.

...

any Additional chart configuration settings.

Examples

## Filter data to one metric and snapshot
reportingResults_filter <- gsm.core::reportingResults %>%
  dplyr::filter(MetricID == "Analysis_kri0001" & SnapshotDate == max(SnapshotDate))

reportingMetrics_filter <- gsm.core::reportingMetrics %>%
  dplyr::filter(MetricID == "Analysis_kri0001") %>%
  as.list()

## Make chart
Widget_BarChart(
  dfResults = reportingResults_filter,
  dfGroups = gsm.core::reportingGroups,
  lMetric = reportingMetrics_filter,
  vThreshold = reportingMetrics_filter$Threshold
)