Overview AE Timelines AE Explorer Hep Explorer Delta-Delta Histogram Outlier Explorer Results Over Time

hep-explorer - Quality Control Details

This page provides a detailed report of the quality control documentation for hep-explorer. The source code for this page is available on github.

Technical Specs

Technical documentation including, functional specifications, regressions tests and risk assessments. see original

Technical Documentation

This page contains various technical documentation for the library, starting with a set of Feature Tests.

Feature Tests

These tests can be used to confirm that any given version of the chart is behaving as expected. The first example page or CAT can be used for testing unless otherwise noted.

Chart

Feature tests for the main chart.

Participant Details

Feature tests for the participant details section which appears when clicking a point in the main chart.

Messages

Feature tests for the Messages section in the sidebar.

Filters

Feature tests for the filters section in the sidebar.

Settings

Feature tests for the settings section in the sidebar

Plot Style

R Ratio

Data Guidelines

Data Specifications for the charts. see original

Data Guidelines

The Safety eDish chart is initialized with JSON data files that match the format created by d3.csv(). The chart is specifically designed for clinical trial safety monitoring, and requires a datasets that contains one row per participant per time point per measure and includes the required columns and fields specified below.

Data Standards

The chart expects an SDTM-esque data structure by default but also easily supports the ADaM data standard (Example : Settings, eDish Graphic). Other, non standard data can also be as long as the data is structured correctly.

Required and optional columns and fields for the SDTM and ADaM data standard are given in the tables below

Required Data Columns Settings

Six variables are required to create an eDish plot: ID, Measure, Value, high and low normal range values and study day. Details and suggested values for ADaM and SDTM are given below.

Settings Variable Description (type) SDTM (Default) ADaM Required?
id_col Unique Subject Identifier (char) USUBJID USUBJID Y
measure_col Name of Measure or Test (chart) TEST PARAM Y
value_col Result or Finding (numeric) STRESN AVAL Y
normalcolhigh Upper Limit of Normal (numeric) STNRHI ANRHI Y
normalcollow Lower Limit of Normal (numeric) STNRLO ANRLO Y
studyday_col Study Day (numeric) DY ADY Y

Optional Data Column Settings

Users may customize the chart with the additional data mappings given below. Note that these are not specified by default, and must be defined by the user. Some suggested mappings for SDTM and ADaM are provided below for reference. See the settings object here for an example of a customized chart.

Settings Variable Description SDTM ADaM Required?
visitn_col Visit Number VISITNUM VISITNUM N
visit_col Visit Name VISIT VISIT N
filter[].value_col Visit-level filter(s) SEX, RACE, etc* N
details[].value_col Person-level descriptive(s) N
groupcols[].valuecol Grouping variable(s) ACTARM* TRTA N
baseline.value_col Baseline Visit definition DY ADY N
analysisFlag.value_col Analysis Visit Flag EPOCH ANL01FL N

Data Field Settings

Field level data is used for identifying key measures for the eDish plot (see settings.measure_details) and identifying baseline visits (see settings.baseline). Suggested values (including the default SDTM values) are shown below, but the user should note that these are very likely to change from study to study.

Usage SDTM Column/Value (default) ADaM Column/Field Value
Define ALT key measure TEST / 'Aminotransferase, alanine (ALT)' PARAM / 'Alanine Aminotransferase (U/L)'
Define AST key measure TEST / 'Aminotransferase, aspartate (AST)' PARAM / 'Aspartate Aminotransferase (U/L)'
Define TB key measure TEST / 'Total Bilirubin' PARAM / 'Bilirubin (umol/L)'
Define ALP key measure TEST / 'Alkaline phosphatase (ALP)' PARAM / 'Alkaline Phosphatase (U/L)'
Define Baseline visit DY / 0 ADY / 0

API

Technical specifications for API. see original

API

hepexplorer(element, settings)

a factory to create a custom Webcharts chart object

returns: chart

Param Type Description
element string CSS selector identifying the element in which to create the chart
settings object settings object specifying options for how the chart is to appear and behave. Options defined here overwrite default values; see Configuration

Events

participantsSelected

The custom participantsSelected event is dispatched to the overall chart wrapper (chart.wrap) whenever the details for a given participant are viewed (or cleared) by clicking on a point in the chart. The event has a custom data property holding an array with the selected ID when a new participant is selected (["123-456-7"]) or an empty array when participant details are cleared.

Chart Configuration

Technical specifications for chart configuration. see original

Configuration Overview

The most straightforward way to customize the Safety Outlier Explorer is by using a configuration object whose properties describe the behavior and appearance of the chart. Since the safety eDish is a Webcharts chart object, many default Webcharts settings are set in the defaultSettings.js file as described below. Refer to the Webcharts documentation for more details on these settings.

In addition to the standard Webcharts settings several custom settings not available in the base Webcharts library have been added to facilitate data mapping and other custom functionality. These custom settings are described in detail below. All defaults can be overwritten by users.

Renderer-specific settings

settings.id_col

string

Unique subject identifier variable name

default: "USUBJID"

settings.value_col

string

result variable name

default: "STRESN"

settings.measure_col

string

measure variable name

default: "TEST"

settings.unit_col

string

measure unit variable name

default: "STRESU"

settings.normalcollow

string

LLN variable name

default: "STNRLO"

settings.normalcolhigh

string

ULN variable name

default: "STNRHI"

settings.studyday_col

string

Study day variable name

default: "DY"

settings.visit_col

string

Visit variable name

default: null

settings.visitn_col

string

Visit number variable name

default: null

settings.exposurestdycol

string

Exposure start day variable name. Note: setting is ignored if exposure data domain is not provided.

default: 'EXSTDY'

settings.exposureendycol

string

Exposure end day variable name. Note: setting is ignored if exposure data domain is not provided.

default: 'EXENDY'

settings.exposuretrtcol

string

Exposure treatment name variable name. Note: setting is ignored if exposure data domain is not provided.

default: 'EXTRT'

settings.exposuredosecol

string

Exposure dose variable name. Note: setting is ignored if exposure data domain is not provided.

default: 'EXDOSE'

settings.exposuredosucol

string

Exposure dose variable name. Note: setting is ignored if exposure data domain is not provided.

default: 'EXDOSU'

settings.baseline

object

Object defining the baseline visit of the study.

settings.baseline.value_col

string

Column containing the baseline visit data

default: "DY"

settings.baseline.values

array

One or more values found in settings.baseline.value_col indicating that the record represents the baseline visit.

default: [0]

settings.filters

array

an array of filter variables and associated metadata

default: none

settings.filters[].value_col

string

Variable name

default: none

settings.filters[].label

string

Variable label

default: none

settings.filters_multiselect

boolean

If true filters are set up to allow multiple selections.

default: true

settings.details

array

an array of ID-level variables and associated metadata

default: Automatically uses values specified in settings.id_col, settings.group_cols and settings.filters

settings.details[].value_col

string

Variable name

default: Automatically uses values specified in settings.id_col, settings.group_cols and settings.filters

settings.details[].label

string

Variable label

default: Automatically uses values specified in settings.id_col, settings.group_cols and settings.filters

settings.group_cols

array

an array of grouping variables and associated metadata

default: none

settings.groupcols[].valuecol

string

Variable name

default: none

settings.group_cols[].label

string

Variable label

default: none

settings.analysisFlag

object

Flags records for use in the eDish and mDish calculations.

default: none

settings.analysisFlag.value_col

string

Indicates which column should be used to flag rows for inclusion eDish and mDish analysis

default: none

settings.analysisFlag.values

array or string

Indicates which values should be used to flag rows for inclusion eDish and mDish analysis

default: none

settings.calculate_palt

object

Indicates whether PALT should be calculated for participants flagged using settings.paltFlag.

default: none

settings.paltFlag

object

Flags records for use in the PALT calculations. Only used if settings.calculate_palt is true.

default: none

settings.paltFlag.value_col

string

Indicates which column should be used to flag rows for PALT analysis.

default: none

settings.paltFlag.values

array or string

Indicates which values should be used to flag rows for for PALT analysis.

default: none

settings.measure_values

object

An object defining the data values from measure_col for the lab measures used in eDish evaluations.

default:

  {
    ALT: 'Aminotransferase, alanine (ALT)',
    AST: 'Aminotransferase, aspartate (AST)',
    TB: 'Total Bilirubin',
    ALP: 'Alkaline phosphatase (ALP)'
  },

settings.add_measures

boolean

If true, all unique values from settings.measure_col are automatically added to the settings.measure_values object. Can be paired with the "all" option for settings.x_options, settings.y_options and settings.point_size_options to allow for flexible interactive axis controls using all available data. Added in v1.2.

default: false

settings.x_options

array or string

Specifies variable options for the x-axis using the key values from settings.measure_values (e.g. "ALT"). When multiple options are specified, a control allowing the user to interactively change the x variable is shown. Specifying 'all' (added in v1.2) uses all options from measure_values.

default: 'all'

settings.x_default

string

String indicating the starting value for the x-axis when the chart is loaded. Must be an option from the settings.x_options array. First item in the settings.x_options array is used if an invalid option is specified.

default: 'ALT'

settings.y_options

array or string

See settings.x_options.

default: ['TB']

settings.y_default

string

See settings.x_default.

default: 'TB'

settings.pointsizeoptions

array or string

See settings.x_options. For point size, options for 'Uniform' (the default) and 'rRatio' are automatically added to the control in addition to the users selections.

default: 'all'

settings.pointsizedefault

string

See settings.x_default.

default: "Uniform"

settings.imputation_methods

array of string

Specifies how data should be imputed for each measure specified in config.measure_values. Valid options are:

default:

{
  ALT: 'data-driven',
  AST: 'data-driven',
  TB: 'data-driven',
  ALP: 'data-driven'
}

settings.imputation_values

number

used as described above when config.imputation_method is set to "user-defined"

default: none

settings.cuts

object

Object defining default cut-points for each measure defined in config.measure_values for each of the different types of supported eDish displays defined in config.display. If config.measure_values is customized to add additional key measures, then values from cuts.defaults are used unless the user provides values using the format shown below.

default:

{
  TB: {
    relative_baseline: 4.8,
    relative_uln: 2
  },
  ALP: {
    relative_baseline: 3.8,
    relative_uln: 1
  }
}

settings.cuts.defaults

object

Default cut values to be used when no user settings are provided. Added in v1.2.

default:

{
  relative_baseline: 3.8,
  relative_uln: 3
}

settings.display

"string"

Defines the display type used on the eDish scatter plot on initial view. Can be changed by the user once the chart is rendered. Valid options are:

Note: Support for an "absolute" option used to show the raw values for the measure was removed prior to the v1 release.

settings.display_options

array

Defines nice labels for the different display options.

default:

  display_options: [
        { label: 'Upper limit of normal adjusted (eDish)', value: 'relative_uln' },
        { label: 'Baseline adjusted (mDish)', value: 'relative_baseline' }
    ]

settings.measureBounds

array of number

Sets upper and lower percentiles used for defining outlier in the "Lab Summary Table" in the participant details section.

default: [0.01,0.99]

settings.populationProfileURL

string

URL linking to additional charts related to population level analysis

default: none

settings.participantProfileURL

string

URL linking to additional charts related to population level analysis. Will need an update in a future release to allow dynamic links for different participants.

default: none

settings.visit_window

number

Default visit window used to highlight eDish points where x and y measures occurred within the specified number of days. Editable by user after render.

default: 30

settings.rratiofilter

boolean

Specifies whether the R Ratio filter should be shown. R ratio is defined as: (ALT value/ULN for ALT) / (ALP value/ULN for ALP).

default: true

settings.rratiocut

numeric

Default cut point for R Ratio filter. Ignored when r_ratio_filter is false. User can update this setting via the UI when r_ratio_filter is true.

default: 0

settings.title

character

Title to be drawn above the controls. Use an empty string or NULL if no title is desired.

default: "Hepatic Safety Explorer"

settings.warningText

string

Informational text to be displayed near the top of the controls (beneath the title, if any). No warning is displayed if warningText is false-y.

default: 'Caution: This interactive graphic is not validated. Any clinical recommendations based on this tool should be confirmed using your organizations standard operating procedures.'

Webcharts settings

The object below contains the default Webcharts settings for the display.

  x: {
        column: null, //set in onPreprocess/updateAxisSettings
        label: null, // set in onPreprocess/updateAxisSettings,
        type: 'linear',
        behavior: 'raw',
        format: '.2f'
        //domain: [0, null]
    },
    y: {
        column: null, // set in onPreprocess/updateAxisSettings,
        label: null, // set in onPreprocess/updateAxisSettings,
        type: 'linear',
        behavior: 'raw',
        format: '.2f'
        //domain: [0, null]
    },
    marks: [
        {
            per: [], // set in syncSettings()
            type: 'circle',
            summarizeY: 'mean',
            summarizeX: 'mean',
            attributes: { 'fill-opacity': 0 }
        }
    ],
    gridlines: 'xy',
    color_by: null, //set in syncSettings
    max_width: 900,
    aspect: 1,
    legend: { location: 'top' },
    margin: { right: 25, top: 25, bottom: 75 }

Testing Logs

Interactive log of QC for all code updates. Includes code reviews, feature testing and regression testing for all releases. see original
Not Found