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

safety-histogram - Quality Control Details

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

Technical Specs

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

Functional Specs

Filter by Measure

This drop-down menu is used to filter the lab variable that is displayed in the chart. The default measure is set to the first variable in the data set, but the default value can be adjusted to any measure upon the project team's request. Users can select any pre-defined measure in this filter. Selecting a measure will display the range of the measure and the number of observations collected for this variable.

Filter by Pre-selected Characteristics

The chart can be configured to have any number of data filters. Each specified filter has a drop-down menu that is used to filter the visit data that is displayed in the chart.

Total Participants Shown

Displayed under the header, this statement provides the total number of participants in the data set in integers as well as the percentage of participants shown to one decimal place. In the default view, all participant data is included in the chart, or 100%, unless the project team requests otherwise. When filters are used, the data shown in the histogram is manipulated and the number of participant records shown at the top of the page may increase or decrease, depending on the variable selected.

Normal Range Function

This feature highlights the normal ranges for the selected measure by displaying a gray rectangle behind the data. This rectangle represents the normal range for that measure and data that falls within the upper and lower limits of the range contains records of participants who are associated with results that are considered normal. Normal ranges are not shown by default , but the option can be activated by checking the normal ranges check box above the chart. If the data does not cite a normal range for a measure, the option to activate the normal range function is not available and the checkbox disappears.

Set X-axis Limits

Users are able to adjust the lower limit of the x-axis by manipulating the input within the Lower Limit box. Users are able to adjust the upper limit of the x-axis by manipulating the input within the Upper Limit box. Each limit box has up and down arrows to adjust the value of the box by 1. Users can select an arrow to change the input or delete the current value in the box and type in a new value. When typing in a value, users must click outside of the box to apply the changes. When a user manipulates an x-axis limit, the x-axis on the chart below the controls will reflect the change.

Reset X-axis limits

Users can change the upper and lower x-axis limits back to the default values for a measure by selecting the "Reset Limits" button. Pressing the button will erase the current values in the upper and lower limit boxes and replace them with defaults. The chart below will also reflect the changes and will show the default axes.

Hover

By moving a mouse cursor over a bar in the chart, users can display metadata for some variables. Hovering the cursor over a particular bar will display the number of records for the measure in that bar's range in a statement below the chart.

Linked Table

Clicking on a bar in the chart will open a table below the chart that contains a detailed listing of participant records. This linked table contains a standard set of default columns that appear consistently across all filters. When a bar is clicked the other available bars lighten, the table header defines the data included in the table, and the records appear in a table below the chart. When a user clicks outside of a bar, the detailed table disappears and the table header will prompt the user to "Click a bar for details."

Clicking on a bar will perform 3 actions:

Regression Tests

Controls

Chart

(use these test notes for the following 4 tests and make sure the version is dev-v2.5.0 TEST NOTES)

(Use these test notes for the following 2 tests and make sure the version is dev-v2.5.0 TEST NOTES)

(Use these test notes for the following 5 tests and make sure the version is dev-v2.5.0 TEST NOTES

(Use these test notes for the following 9 tests and make sure the version is dev-v2.5.0 TEST NOTES

(Use this setting for the following test and make sure the version is dev-v2.5.0 TEST NOTES

(Use these test notes for the following 2 tests and make sure the version is dev-v2.5.0 TEST NOTES )

(Use this setting for the following test and make sure the version is dev-v2.5.0 TEST NOTES )

(Use these settings for the following 2 tests and make sure the version is dev-v2.5.0 TEST NOTES )

Data Listing

Data Guidelines

Data Specifications for the charts. see original

The Safety Histogram accepts JSON data of the format returned by d3.csv(). The renderer visualizes clinical medical signs data with one row per measurement plus the required variables specified below.

Data structure

one record per measurement

Data specification

required and optional variables:

Setting Default Data Type Description Required?
measure_col TEST character a variable that contains the names of each medical sign Yes
value_col STRESN numeric a variable that contains the results for each medical sign; non-numeric results are removed with a notification thrown to the log Yes
id_col USUBJID character a variable that contains IDs for each participant
unit_col STRESU character a variable that contains the units of each medical sign
normal_col_low STNRLO numeric a variable that contains the lower limit of normal of the medical sign
normal_col_high STNRHI numeric a variable that contains the upper limit of normal of the medical sign
filters[] either an array of variables and metadata that will appear in the controls as data filters
details[] either an array of variables and metadata that will appear in the data listing

Customized Chart with Queries

The following data specs and chart settings can be used to create a chart with several custom filters, including Sex, Race and Query Status. A sample chart using this configuration is found here.

Data Specification

Settings Variable Variable Default Required?
id_col Participant ID USUBJID Y
measure_col Measure TEST Y
value_col Value STRESN Y
unit_col Unit STRESU
normalcollow Normal Range - Low STRNLO
normalcolhigh Normal Range - High STRNHI
filter Visit VISIT Y
filter Site ID SITEID Y
filter Treatment Arm ARM Y
filter Sex SEX Y
filter Race RACE Y
filter Query Flag ("Y" for yes) QUERYFL Y
details Query Details QUERYDETAILS Y

Settings Object

  {filters:
                [   {value_col: 'VISIT',    label: 'Visit'},
                ,   {value_col: 'ARM', label: 'Arm'}
                ,   {value_col: 'SITEID', label: 'Site ID'}
                ,   {value_col: 'SEX', label: 'Sex'}
                ,   {value_col: 'RACE', label: 'Race'}
                ,   {value_col: 'QUERYFL', label: 'Open Query?'}]
            ,details: [
                {value_col: 'USUBJID'     , label: 'Subject ID'},
                {value_col: 'SITEID'      , label: 'Site ID' },
                {value_col: 'SEX'         , label: 'Sex'    },
                {value_col: 'RACE'        , label: 'Race'   },
                {value_col: 'VISIT'       , label: 'Visit'  },
                {value_col: 'DY'          , label: 'Study Day' },    
                {value_col: 'STNRLO'      , label: 'LLN' },
                {value_col: 'STRESN'      , label: 'Result'}, 
                {value_col: 'STNRHI'      , label: 'ULN' },
                {value_col: 'STRESU'      , label: 'Units' },
                {value_col: 'QUERYDETAILS', label: 'Query Details'}]
            }

API

Technical specifications for API. see original

safetyHistogram(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

Chart Configuration

Technical specifications for chart configuration. see original

The most straightforward way to customize the Safety Histogram is by using a configuration object whose properties describe the behavior and appearance of the chart. Since the Safety Histogram is a Webcharts chart object, many default Webcharts settings are set in the webchartsSettings.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 the Safety Histogram 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

The sections below describe each safety-histogram setting as of version 2.3.0.

settings.measure_col

string

a variable that contains the names of each medical sign

default: "TEST"

settings.value_col

string

a variable that contains the results for each medical sign; non-numeric results are removed with a notification thrown to the log

default: "STRESN"

settings.id_col

string

a variable that contains IDs for each participant

default: "USUBJID"

settings.unit_col

string

a variable that contains the units of each medical sign

default: "STRESU"

settings.normalcollow

string

a variable that contains the lower limit of normal of the medical sign

default: "STNRLO"

settings.normalcolhigh

string

a variable that contains the upper limit of normal of the medical sign

default: "STNRHI"

settings.filters

array

an array of variables and metadata that will appear in the controls as data filters

default: none

settings.filters[].label

string

a description of the variable

default: none

settings.filters[].value_col

string

the name of the variable

default: none

settings.details

array

an array of variables and metadata that will appear in the data listing

default: none

settings.details[].label

string

a description of the variable

default: none

settings.details[].value_col

string

the name of the variable

default: none

settings.start_value

string

the name of the initially displayed medical sign; defaults to the first measure in the data

default: none

settings.normal_range

boolean

a boolean that dictates whether the normal range control will be generated

default: true

settings.displayNormalRange

boolean

a boolean that dictates whether the normal range will be displayed initially

default: false

Webcharts settings

The object below contains Webcharts settings that define the safety-histogram chart as of version 2.3.0 of the Safety Histogram.

{
    "x": {
        "type": "linear",
        "column": null,
        "label": null,
        "domain": [
            null,
            null
        ],
        "format": null,
        "bin": null
    },
    "y": {
        "type": "linear",
        "column": null,
        "label": "# of Observations",
        "domain": [
            0,
            null
        ],
        "format": "1d",
        "behavior": "flex"
    },
    "marks": [
        {
            "per": [],
            "type": "bar",
            "summarizeY": "count",
            "summarizeX": "mean",
            "attributes": {
                "fill-opacity": 0.75
            }
        }
    ],
    "aspect": 3
}

Testing Logs

Interactive log of QC for all code updates. Includes code reviews, feature testing and regression testing for all releases. see original
PullRequestRequesterDateRequestedBranchTargetTitleReviewIDReviewerReviewDateReviewStatusMergedByDateMergedReviewComments
0001jwildfire2016-04-13T19:51:18Zreorgmasterrefactored code to use webcharts-wrapper-boilerplateNONEjwildfire2016-04-18T13:17:13Z
0019jwildfire2016-05-25T19:50:51Zreorg-backupmasterReorg backupNONENathan Bryant2016-06-08T15:24:30Z
0021samussiah2016-08-11T22:27:34ZcustomizationmasterV1.3.0NONESpencer2016-08-17T18:44:33Z
0032jwildfire2016-12-16T01:36:36Zheader_bugv1.3.0clear the header in onDataTransformNONEjwildfire2017-01-05T16:45:25Z
0033jwildfire2016-12-17T15:53:47Zv1.3.0_part2masterSafety Historgram v1.3.0 - Part 2NONEjwildfire
0034jwildfire2016-12-17T16:12:36Zv1.3.0masterSafety Histogram v2.0.0NONEjwildfire2017-02-16T16:41:23Z
0035jwildfire2017-01-03T23:57:35Znew-filter-defaultv1.3.0New filter defaultNONEjwildfire2017-01-05T23:59:20Z
0036jwildfire2017-01-05T00:25:05Zchf-build-fixv1.3.0Chf build fixNONEjwildfire2017-01-09T19:10:59Z
0039samussiah2017-01-19T21:37:36Znormal-range-bugv1.3.0Normal range bugNONESpencer Childress2017-01-19T21:37:47Z
0041samussiah2017-01-30T20:49:35Zdynamic-normal-range-controlv1.3.0Dynamic normal range controlNONESpencer Childress2017-01-30T20:52:54Z
0042samussiah2017-02-10T22:27:02Zconsistent-axesv1.3.0Implement filter-independent x-axis domain and improve normal range l…21565542jwildfire2017-02-13T17:53:26ZCOMMENTEDjwildfire2017-02-13T22:40:53Z#38 is looking good. ;; x-axis (#22) still seems to be changing for me on filter though. Will look at that more closely in a bit. ;;I'll take your word for it that this works ;);;cute.
0042samussiah2017-02-10T22:27:02Zconsistent-axesv1.3.0Implement filter-independent x-axis domain and improve normal range l…21584782jwildfire2017-02-13T18:54:57ZCOMMENTEDjwildfire2017-02-13T22:40:53ZDon't think having this on pre-process is enough. Will only happen once ... maybe if we move to redraw()? Leaning towards just bumping #22 out of v2.0.0. It's pretty low priority for the histogram IMO.
0042samussiah2017-02-10T22:27:02Zconsistent-axesv1.3.0Implement filter-independent x-axis domain and improve normal range l…21634665jwildfire2017-02-13T22:39:58ZCOMMENTEDjwildfire2017-02-13T22:40:53Zlets deal with this in v2.1. merging the PR.
0044jwildfire2017-02-16T22:50:27Zdetail_colBugmasteruse details.colNONEjwildfire2017-02-16T22:51:01Z
0046jwildfire2017-03-07T02:16:40Zv2.0.1masterDon't render filters for variables with 0 or 1 levels. closes #4525649470samussiah2017-03-07T22:26:57ZAPPROVEDjwildfire2017-03-13T23:37:33ZBrilliant!
0050jwildfire2017-10-12T17:58:28Zv2.0.2-devmasterv2.0.2 dev branchNONEjwildfire
0051jwildfire2017-10-12T17:59:13Zpagination-fixv2.0.2-devfix pagination bug. fixes #49NONEjwildfire
0057samussiah2017-10-19T22:27:38Zv2.0.3-devmasterV2.0.3 dev70728950jwildfire2017-10-20T02:07:23ZAPPROVEDjwildfire2017-10-20T02:11:59Z
0063mhickle2017-12-18T19:41:01ZReadMemasterRead meNONEmhickle2017-12-18T19:42:49Z
0065jwildfire2018-01-18T03:44:43Zv2.1.0-devmasterSafety Histogram v2.1.090620700dschwentker2018-01-22T20:49:30ZAPPROVEDjwildfire2018-01-23T05:22:55ZRegression tests updated and passed.
0066jwildfire2018-01-18T03:45:38Zinteractive-axisv2.1.0-devInteractive Axis90155085samussiah2018-01-19T15:59:31ZCHANGES_REQUESTEDjwildfire2018-01-23T05:19:41ZWorks (mostly) as expected, responsive, but there are a few elusive bugs. Of note when the domain is changed the lower bound of the very first bin is less than the lower limit of the x-domain. Not sure if that's the renderer or webcharts but as I recall we had to come up with a workaround before for this.;;Bitwise `&` here too.;;Need to convert `f[v]` to numeric here and perhaps replace the bitwise `&` with the standard `&&`.;;Possibly also ensure that `chart.x_dom` contains numbers rather than strings.;;Convert these values to numeric.
0066jwildfire2018-01-18T03:45:38Zinteractive-axisv2.1.0-devInteractive Axis90206449jwildfire2018-01-19T18:43:15ZCOMMENTEDjwildfire2018-01-23T05:19:41Z👍 on filter logic. I think we're ok on `x_dom` being numeric since we measures that aren't numeric.
0066jwildfire2018-01-18T03:45:38Zinteractive-axisv2.1.0-devInteractive Axis90219942samussiah2018-01-19T19:29:43ZAPPROVEDjwildfire2018-01-23T05:19:41ZPerfect!
0066jwildfire2018-01-18T03:45:38Zinteractive-axisv2.1.0-devInteractive Axis90620495dschwentker2018-01-22T20:48:50ZAPPROVEDjwildfire2018-01-23T05:19:41ZIssue 59 was tested and closed and was the only issue to be tested in this update.
0069samussiah2018-02-27T14:56:51Zv2.1.1-devmasterSafety Histogram - v2.1.199866186pburnsdata2018-02-27T21:41:48ZCHANGES_REQUESTEDsamussiah2018-03-09T20:26:09ZThe version wasn't changed in package.json, wasn't sure if it needed to be?
0069samussiah2018-02-27T14:56:51Zv2.1.1-devmasterSafety Histogram - v2.1.1102645010pburnsdata2018-03-09T13:31:26ZAPPROVEDsamussiah2018-03-09T20:26:09Z
0069samussiah2018-02-27T14:56:51Zv2.1.1-devmasterSafety Histogram - v2.1.1102769245dschwentker2018-03-09T19:53:19ZAPPROVEDsamussiah2018-03-09T20:26:09ZTested and passed using webcharts version v1.10.0-dev. Confirmed that there are 0 results when running d3.selectAll('.wc-controls .control-label') in the console.
0071samussiah2018-03-08T22:55:40Zv2.2.0-devmasterSafety Histogram - v2.2.0112849276dschwentker2018-04-17T14:57:35ZAPPROVEDsamussiah2018-04-17T16:01:24ZRegression testing complete - all items passed.
0072samussiah2018-03-10T16:57:30Zsettings-schemav2.2.0-devSettings schema103051720pburnsdata2018-03-12T13:56:28ZAPPROVEDSpencer Childress2018-04-02T18:38:37Z
0072samussiah2018-03-10T16:57:30Zsettings-schemav2.2.0-devSettings schema108176648dschwentker2018-03-29T19:32:37ZAPPROVEDSpencer Childress2018-04-02T18:38:37ZConfirmed there are properties in settings-schema.json that match up with variables in the rendererSpecificSettings section of src/defaultSettings.js.
0073samussiah2018-03-10T17:38:23Zremove-falsey-resultsv2.2.0-devRemove falsey results103061644pburnsdata2018-03-12T14:20:00ZCOMMENTEDSpencer Childress2018-04-02T18:38:59ZRespect for Grammar
0073samussiah2018-03-10T17:38:23Zremove-falsey-resultsv2.2.0-devRemove falsey results103062532pburnsdata2018-03-12T14:22:05ZAPPROVEDSpencer Childress2018-04-02T18:38:59Z
0073samussiah2018-03-10T17:38:23Zremove-falsey-resultsv2.2.0-devRemove falsey results108351888dschwentker2018-03-30T15:01:48ZAPPROVEDSpencer Childress2018-04-02T18:38:59ZTested and approved
0075samussiah2018-03-16T15:53:20Zprecisionv2.2.0-devPrecision105101450pburnsdata2018-03-19T19:12:31ZAPPROVEDemmorris2018-04-05T15:51:52Z@samussiah I really like this! log10 makes that switch from the ticks to bins really nice. Here are my random thoughts for what they're worth:;; - If the numbers are ever really large (not sure if that ever happens), might make sense to have a case that handles that - maybe one that uses scientific notation? ;; - ~3.16 does seem like a small threshold for switching to integer tick marks - but understand why it's cut off there
0075samussiah2018-03-16T15:53:20Zprecisionv2.2.0-devPrecision109417877dschwentker2018-04-04T17:07:38ZAPPROVEDemmorris2018-04-05T15:51:52ZTested and passed in all browsers.
0082pburnsdata2018-04-26T16:56:31Zfix-readmemasterFix readmeNONEPreston Burns
0083brittsikora2018-04-26T17:11:17Zbrittsikora-patch-1masterUpdated example link to go to new test pageNONEBritt Sikora
0086rtbailey2018-08-09T19:38:03Zrtbailey-patch-1masterUpdate LICENSE.mdNONERyan Bailey
0087samussiah2018-10-23T18:56:05Zv2.2.1-devmasterSafety Histogram v2.2.1167731423jwildfire2018-10-24T05:09:13ZAPPROVEDjwildfire2018-10-24T15:53:43Z💯
0088jwildfire2018-10-24T16:17:05Zv2.2.2-devmasterSafety Histogram v2.2.2168004078samussiah2018-10-24T16:30:19ZAPPROVEDjwildfire2018-10-24T16:30:49Znice find!
0090pburnsdata2019-01-08T21:11:50Zpburnsdata-patch-1masterResolve Spelling Error211847806emmorris2019-03-07T15:29:01ZAPPROVEDPreston Burns2019-03-07T18:56:27ZGreat spelling Preston!
0094samussiah2019-03-18T21:18:10Zdev-v2.3.0masterSafety Histogram v2.3.0229670422dschwentker2019-04-23T16:45:43ZAPPROVEDSpencer Childress2019-04-23T18:06:13ZRegression tests passed in Firefox and Chrome
0096samussiah2019-04-02T16:15:05Zinvalid-measuredev-v2.3.0Optionalize units, throw warning when start measure is invalid, and annotate removed records223913673pburnsdata2019-04-08T15:22:35ZAPPROVEDSpencer Childress2019-04-22T17:14:49ZLooks great! Couple bonus improvements in there too;;makes perfect sense;;Seems like all the cases!;;i like this
0096samussiah2019-04-02T16:15:05Zinvalid-measuredev-v2.3.0Optionalize units, throw warning when start measure is invalid, and annotate removed records228818200dschwentker2019-04-19T20:32:13ZAPPROVEDSpencer Childress2019-04-22T17:14:49ZTested and passed the three issues in this PR.
0097samussiah2019-04-02T21:04:23Zimproved-hoveringdev-v2.3.0Improve hovering over bins.223937012pburnsdata2019-04-08T15:58:51ZAPPROVEDSpencer Childress2019-04-22T17:14:55ZHovers on incredible - clicks all the right buttons;;looks nice;;oh wow interesting. Good idea on the invisible path;;always handy
0097samussiah2019-04-02T21:04:23Zimproved-hoveringdev-v2.3.0Improve hovering over bins.228820276dschwentker2019-04-19T20:40:04ZAPPROVEDSpencer Childress2019-04-22T17:14:55ZTested and approved
0098samussiah2019-04-03T18:30:31Zzero-range-barsdev-v2.3.0Manually draw zero range bars.224046202pburnsdata2019-04-08T19:38:32ZAPPROVEDSpencer Childress2019-04-22T17:15:06ZExcellent. From garganto bars to lil bars. Makes sense to me : lil ranges -> lil bars
0098samussiah2019-04-03T18:30:31Zzero-range-barsdev-v2.3.0Manually draw zero range bars.228831074dschwentker2019-04-19T21:23:56ZAPPROVEDSpencer Childress2019-04-22T17:15:06ZTested and approved
0102samussiah2019-04-05T19:15:41Zbetter-binsdev-v2.3.0Add bin width algorithm.224056911pburnsdata2019-04-08T20:22:44ZCHANGES_REQUESTEDSpencer Childress2019-04-22T17:15:57ZTHIS IS SOME FANCY STUFF BIG MAN. Requested changes tho cuz i think the normal range needs to stay on top of the hover bars in the SVG so the tooltips dont get lost;;whers dis tooltip;;yeuuuh fancy fancy;;i like this;;I don't see these - it looks like the hover bars are on top of them in the SVG ;;credit - good man
0102samussiah2019-04-05T19:15:41Zbetter-binsdev-v2.3.0Add bin width algorithm.225116337pburnsdata2019-04-10T17:34:16ZAPPROVEDSpencer Childress2019-04-22T17:15:57Z
0102samussiah2019-04-05T19:15:41Zbetter-binsdev-v2.3.0Add bin width algorithm.228836761dschwentker2019-04-19T21:49:59ZAPPROVEDSpencer Childress2019-04-22T17:15:57ZTested and approved
0103samussiah2019-04-05T19:40:36Zzoom-buttondev-v2.3.0Add button that sets x-domain to extent of filtered data.224397745pburnsdata2019-04-09T13:24:46ZAPPROVEDSpencer Childress2019-04-22T17:16:04Zthat's a cool feature - great idea;;@samussiah is this using jsdelivr or does it even matter?
0103samussiah2019-04-05T19:40:36Zzoom-buttondev-v2.3.0Add button that sets x-domain to extent of filtered data.224480090samussiah2019-04-09T15:25:32ZCOMMENTEDSpencer Childress2019-04-22T17:16:04Ztext files like our test data can be served up straight from GitHub, no middleman required
0103samussiah2019-04-05T19:40:36Zzoom-buttondev-v2.3.0Add button that sets x-domain to extent of filtered data.228835606dschwentker2019-04-19T21:44:14ZAPPROVEDSpencer Childress2019-04-22T17:16:04ZTested/approved
0104samussiah2019-04-07T17:19:18Zx-axis-tick-labelsdev-v2.3.0Annotate bin boundaries and ditch x-axis.225118715pburnsdata2019-04-10T17:45:03ZAPPROVEDSpencer Childress2019-04-22T17:16:10Z@samussiah This looks great to me - major upgrade.;; ;; Two random thoughts:;; - might lose labels if theres two empty bars next to each other;; - the new x axis tick label fonts are a lil bigger than the y axis labels but not sure that really matters;; ;; Approving this because those two don't seem like problems to me - but thought I'd raise them to your attention incase they did to you;;This looks great - big improvement I think;;smart
0104samussiah2019-04-07T17:19:18Zx-axis-tick-labelsdev-v2.3.0Annotate bin boundaries and ditch x-axis.228837616dschwentker2019-04-19T21:53:52ZAPPROVEDSpencer Childress2019-04-22T17:16:10ZTested and approved
0107samussiah2019-04-09T18:09:00Zread-me-wikidev-v2.3.0Update README and wiki.225128080pburnsdata2019-04-10T18:11:07ZAPPROVEDSpencer ChildressCoolio - knocking out a bunch of issues here;;wow this is really high quality;;makes perfect sense;;@samussiah does this (destroying the listing) not happen on destroy?
0107samussiah2019-04-09T18:09:00Zread-me-wikidev-v2.3.0Update README and wiki.225195087samussiah2019-04-10T20:19:51ZCOMMENTEDSpencer Childressyep, good catch. i'll throw a fix in.
0107samussiah2019-04-09T18:09:00Zread-me-wikidev-v2.3.0Update README and wiki.228706484dschwentker2019-04-19T14:17:58ZAPPROVEDSpencer ChildressTested and approved
0109samussiah2019-04-09T20:11:36Znormal-range-tooltipsdev-v2.3.0Normal range tooltips225690622pburnsdata2019-04-11T17:50:53ZAPPROVEDSpencer Childress2019-04-22T17:16:16ZPerfect! Good idea to simply move it to control
0109samussiah2019-04-09T20:11:36Znormal-range-tooltipsdev-v2.3.0Normal range tooltips228730412dschwentker2019-04-19T15:30:45ZAPPROVEDSpencer Childress2019-04-22T17:16:16ZTested and approved
0112jwildfire2019-04-19T19:05:18Zdev-v2.2.3masterdev-v2.2.3229149295samussiah2019-04-22T17:12:15ZAPPROVEDSpencer Childress2019-04-22T17:12:19Z
0114samussiah2019-05-10T21:08:08Zdev-v2.3.1masterSafety Histogram v2.3.1237011420jwildfire2019-05-14T04:04:02ZCHANGES_REQUESTEDSpencer Childress2019-06-13T15:59:40ZLet's chat tomorrow. I suggested a few minor tweaks in comments, and want to discuss whether it makes sense to set the y-axis (along with the x-) for each measure. ;; ;; Also - getting an error when i change a range value and then click zoom (works fine if i hit enter). ;;```suggestion;; "webcharts": "^1.11.6";; ```;;Also need to update package version above. I think I'd call this a technical fix (not a new feature), so I'd probably go with v2.3.1 ... ;;Want to add a binType option (or just delete the 2nd method)?;;Not reviewing this right now ... can dig in later if you decide to keep it in. ;;Are we using all 3 sets of bin widths? ;;Good comments - very helpful. ;;what's this doing?
0114samussiah2019-05-10T21:08:08Zdev-v2.3.1masterSafety Histogram v2.3.1237460824jwildfire2019-05-14T19:42:05ZAPPROVEDSpencer Childress2019-06-13T15:59:40Z
0114samussiah2019-05-10T21:08:08Zdev-v2.3.1masterSafety Histogram v2.3.1248993643danedexF52019-06-12T20:16:03ZAPPROVEDSpencer Childress2019-06-13T15:59:40ZApproved
0120samussiah2019-06-03T15:35:36Zdev-v2.4.0masterSafety Histogram v2.4.0259675149danedexF52019-07-09T18:13:22ZAPPROVEDSpencer Childress2019-07-09T19:01:39ZI approve
0121samussiah2019-06-03T16:36:11Zbins-controldev-v2.4.0add bins control246152880jwildfire2019-06-05T17:33:08ZAPPROVEDSpencer Childress2019-06-18T19:54:41ZLooks good!;; ;; Might be good to coerce bin count in the control to an integer with Math.ceil (since that seems to be what happens behind the scenes regardless)
0121samussiah2019-06-03T16:36:11Zbins-controldev-v2.4.0add bins control251321601danedexF52019-06-18T19:48:28ZAPPROVEDSpencer Childress2019-06-18T19:54:41ZApproved
0124samussiah2019-06-03T20:16:12Zbin-algorithmsdev-v2.4.0add binning algorithm control246165635jwildfire2019-06-05T17:56:50ZAPPROVEDSpencer Childress2019-06-18T19:54:51ZReally nice stuff!
0124samussiah2019-06-03T20:16:12Zbin-algorithmsdev-v2.4.0add binning algorithm control251321414danedexF52019-06-18T19:48:06ZAPPROVEDSpencer Childress2019-06-18T19:54:51ZApproved
0125samussiah2019-06-03T20:42:02Zupdated-footnotedev-v2.4.0update bar details footnote246173913jwildfire2019-06-05T18:12:36ZCHANGES_REQUESTEDSpencer Childress2019-06-18T19:55:03ZAs discussed, there is a small bug. When the user (1) clicks bar #1 (with N=100), (2) mouses over a different bar #2 (with n=200) and (3) mouses out of bar #2. The footnote incorrectly says that Bar #1 has N=200.
0125samussiah2019-06-03T20:42:02Zupdated-footnotedev-v2.4.0update bar details footnote246185877jwildfire2019-06-05T18:35:27ZAPPROVEDSpencer Childress2019-06-18T19:55:03Z
0125samussiah2019-06-03T20:42:02Zupdated-footnotedev-v2.4.0update bar details footnote251321216danedexF52019-06-18T19:47:43ZAPPROVEDSpencer Childress2019-06-18T19:55:03ZApproved
0126samussiah2019-06-03T21:10:09Zoverlapping-bin-boundariesdev-v2.4.0thin x-axis tick labels246177387jwildfire2019-06-05T18:19:43ZAPPROVEDSpencer Childress2019-06-18T19:55:12ZWorking well for me. 👍 ;;Clever!
0126samussiah2019-06-03T21:10:09Zoverlapping-bin-boundariesdev-v2.4.0thin x-axis tick labels251321033danedexF52019-06-18T19:47:22ZAPPROVEDSpencer Childress2019-06-18T19:55:12ZApproved
0128samussiah2019-06-04T14:58:50Zlinear-x-axisdev-v2.4.0add option for linear x-axis instead of bin boundaries246185632jwildfire2019-06-05T18:34:57ZAPPROVEDSpencer Childress2019-06-18T19:55:19ZLooks great. ;; ;; Let's add a control to toggle between "continuous" and "bin boundaries" for the x-axis type.
0128samussiah2019-06-04T14:58:50Zlinear-x-axisdev-v2.4.0add option for linear x-axis instead of bin boundaries251320786danedexF52019-06-18T19:46:53ZAPPROVEDSpencer Childress2019-06-18T19:55:19ZApproved
0130samussiah2019-06-05T21:44:24Zaxis-toggledev-v2.4.0add x-axis tick display toggle246516579jwildfire2019-06-06T11:43:47ZAPPROVEDSpencer Childress2019-06-18T19:55:27Z👍
0130samussiah2019-06-05T21:44:24Zaxis-toggledev-v2.4.0add x-axis tick display toggle251320416danedexF52019-06-18T19:46:11ZAPPROVEDSpencer Childress2019-06-18T19:55:27ZApproved
0131dependabot[bot]2019-07-12T04:15:53Zdependabot/npm_and_yarn/lodash-4.17.14masterBump lodash from 4.17.11 to 4.17.14261296212samussiah2019-07-12T14:36:38ZAPPROVEDSpencer Childress2019-07-12T14:37:17Z
0134jwildfire2019-08-20T18:10:43Zdev-v2.5.0masterSafety Histogram v2.5.0334674929danedexF52019-12-19T14:39:31ZAPPROVEDSpencer Childress2020-01-20T22:15:07Z
0134jwildfire2019-08-20T18:10:43Zdev-v2.5.0masterSafety Histogram v2.5.0345542482danedexF52020-01-20T21:38:41ZAPPROVEDSpencer Childress2020-01-20T22:15:07ZApproved
0136pburnsdata2019-10-02T14:20:30Zdev-v2.4.1mastermove table styling to onLayout296352307jwildfire2019-10-02T16:03:11ZAPPROVEDjwildfire2019-10-02T16:07:10Z
0140samussiah2019-11-26T20:09:12Zgroup-comparisonsdev-v2.5.0group comparisons327551908jwildfire2019-12-05T15:36:57ZAPPROVEDSpencer Childress2019-12-17T18:13:19ZReally nice!;;Shall we just drop this for now? ;;Capital D in "highlighteD" intentional? ;;Looks consistent at least, so nbd. ;;slick!;;Also need to deselect bars in the main chart here. see #143 ;;Really nice. ;;👍 ;;Nice touch;;General note: I understand the need for the js-based css, but I've never liked using this crazy array of quoted strings. ;; ;; There must be a way we can save this as an actual css file and then write a script as part of the build to convert it to an object and then load it like we do at the bottom of this file.
0140samussiah2019-11-26T20:09:12Zgroup-comparisonsdev-v2.5.0group comparisons327732380samussiah2019-12-05T17:41:08ZCOMMENTEDSpencer Childress2019-12-17T18:13:19Zmaybe this package: https://www.npmjs.com/package/cssparser