`r lifecycle::badge("stable")`
A widget that generates a scatter plot of group-level metric results, plotting the denominator on the x-axis and the numerator on the y-axis.
Usage
Widget_ScatterPlot(
dfResults,
lMetric = NULL,
dfGroups = NULL,
dfBounds = NULL,
bAddGroupSelect = TRUE,
strShinyGroupSelectID = "GroupID",
bDebug = FALSE
)
Arguments
- dfResults
`data.frame` A stacked summary of analysis pipeline output. Created by passing a list of results returned by [Summarize()] to [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 [MakeMetric()] and turing 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.kri")`.
- dfGroups
`data.frame` Group-level metadata dictionary. Created by passing CTMS site and study data to [MakeLongMeta()]. Expected columns: `GroupID`, `GroupLevel`, `Param`, `Value`.
- dfBounds
`data.frame` Set of predicted percentages/rates and upper- and lower-bounds across the full range of sample sizes/total exposure values for reporting. Created by passing `dfResults` and `dfMetrics` to [MakeBounds()]. Expected columns: `Threshold`, `Denominator`, `Numerator`, `Metric`, `MetricID`, `StudyID`, `SnapshotDate`.
- bAddGroupSelect
`logical` Add a dropdown to highlight sites? Default: `TRUE`.
- strShinyGroupSelectID
`character` Element ID of group select in Shiny context. Default: `'GroupID'`.
- bDebug
`logical` Print debug messages? Default: `FALSE`.
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()
reportingBounds_filter <- gsm.core::reportingBounds %>%
dplyr::filter(MetricID == "Analysis_kri0001" & SnapshotDate == max(SnapshotDate))
Widget_ScatterPlot(
dfResults = reportingResults_filter,
lMetric = reportingMetrics_filter,
dfGroups = gsm.core::reportingGroups,
dfBounds = reportingBounds_filter
)