Giter Club home page Giter Club logo

safety-outlier-explorer's People

Contributors

dependabot[bot] avatar jwildfire avatar mhickle avatar nbryant avatar pburnsdata avatar samussiah avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

safety-outlier-explorer's Issues

Add settings schema.

need to change settings.unscheduled_visit_pattern to string

Test notes

  • A form appears in CAT corresponding to the renderer settings.

Make axes ranges stay consistent when using a filter

From Meagan Spychala on 9/19:

"It would be really useful if the axes’ ranges stayed consistent when using a filter. For example, we were looking at a longitudinal graphic of systolic blood pressure across several sites, but each site’s graphic had an updated vertical range to fit that site, it did the use aggregate of the data (i.e. if the SBP for the study as a whole was 70 to 160, but a site’s range was 90-120, the 90-120 would be the vertical axis range for that site only) . Because the range of the vertical (SBP) and horizontal (Visit) axes can change, it is harder to see if the sites were in line with each other or if there was an outlying site. I think it’s appropriate to have the range of the axes change depending on the measure (for example, SBP vs. DBP), but once you pick a measure, the axes’ range should be held constant based upon the overall data to be able to identify potential trends."

Regression Testing for Outlier Explorer v1.3.0

Confirm basic functionality and new features are working as expected in examples shown below:

Examples using v1.3.0 Release Candidate
default
customized

Basic Functionality (Tested every release)

  • Check all spelling and grammar on the page
  • Confirm that the Measure filter is working as expected: when selected, the distribution of observations should change.
  • Confirm that the X-axis filter changes the x-axis to the selected variable
  • Use a combination of filters to ensure that more than one manipulation can be applied at once
  • Confirm that you can view a detailed listing of a participant (small multiples) by clicking on a plot point in the chart: the drop down should provide more information about measures and and visits for the individual

New Functionality (Tested in V1.3.0 only)

  • (#27) Confirm that plot points marked as queried appear as a different color than other plot points and when clicked, display a message detailing the event and query
  • (#23) Confirm that a participant status filter is present and works as expected
  • (#22) Confirm that the axes ranges appear consistently when using multiple filters
  • (#20) Confirm that the x-axis for visit number only displays one visit number per visit
  • (#19) Confirm that the small multiples for a participant includes demographic information (age, sex, race)
  • (#18) Confirm that the # of enrolled/randomized individuals is visible on the top of the chart
  • (#17) Confirm that there is an option to rotate the x-axis by 45 degrees and that it works as expected?
  • (#13) Confirm that the small multiples appear as a consistent size by selecting multiple filters and exploring multiple small multiples for participants
  • (#10) Confirm that the "Lab Test" filter is now presented as "Measure"

Small multiples don't always show y-axis for measure

Comment from Jack on 4/29:

"In Outlier Explorer, when I click on an individual subject in the graph I get the nice “All Measures for xxx” at bottom, as shown below. There is a problem, however, in that often the values on the y-axis for the individual tests don’t show; see, for example, creatinine, HDL cholesterol, etc. below. Sometimes it doesn’t matter because I’m more interested in the trend than the actual values, but sometimes it does (like below where I need to know what this subject’s actual creatinine values were). Can this be fixed?"

Jeremy:
jack_bug
This happens when values are all the same - put into next sprint

Show # of Enrolled/Randomized Participants

Not sure the best way to handle this, but it would be good to have the number of relevant study participants shown somewhere on the chart. Maybe add a footnote for "X of X participants shown in this view"

Show all time points in small multiples

Current State: x.domain is for the small multiples is currently set using the current chart. This causes problems with x.domain changes between measures since only the timepoints for the current chart are shown in the multiples.

Fix: Let x-scale vary between small multiples.

Rename Lab Test Variable

The variable called "Lab Tests" does not match other charts, so please change it to "Measure"

Make lines slightly darker

During today's meeting Jack requested that we slightly darken the lines on the chart because when he displays it on a projector it is hard to see. He doesn't want them to be too dark though because he still needs to select them and see that they are selected.

Test notes

  • Lines are darker than they used to be.

Firefox throwing tantrum over decimals

Firefox does not like decimals in the y-axis limit control boxes and highlights the box in red when a decimal is entered. Doesn't affect functionality - just needs a styling fix

Bug in IE9

when clicking a line, small multiples don't appear and console shows:

SCRIPT87: Invalid argument.
File: d3.v3.min.js, Line: 3, Column: 4730

Adjust y-axis limit controls to increment by a function of the data range

On y-axis upper and lower limit controls, the boxes contain arrows to adjust the limits by 1. This is not helpful when measures are reported in tenths or the range spans over 100

Test notes

  • When clicking the arrows in the y-axis limit inputs, the limits should increment by a reasonable factor of the y-axis range, or roughly 1/15 of the range. For example, if the range is 150 the increment should be 10 and if the range is 1.5 the increment should be .1.

Add Sort by Site Feature

Add feature to sort by site, so they can see AEs (and vitals, labs, etc.) from one site at a time

Handle unexpected visits systematically

Depending on how unscheduled visits are displayed on the x-axis, the chart can have some unintended behavior.

(See related issue for Results Over Time: RhoInc/safety-results-over-time#43)

If visits are displayed purely chronologically, the challenge is that you end up creating a new event type that shows up in the middle of the data, but for only a small number of data points. See example of visits 2.1 and 4.1 below:
image

Our primary medical monitor user has proposed that to fix this, we sort all Unscheduled visits to the far right end of the chart, where they are still visible, but they don't interfere with seeing the data flow through expected visits. The problem here is that the chart sometimes connects these points in a non-linear way:
example2

Proposed solutions:

  1. Retain visits in numerical order, but create a toggle that lets the user "Hide unscheduled visits"
  2. Force the chart to connect the dots in the same order as the axis is drawn

Test notes

Test out the new "Visits without data" and "Unscheduled visits" controls in CAT with the safetyData/ADBDS.csv data file (not safetyData-queries/ADBDS.csv).

Confirm that:

  • Unscheduled Visits and Visits with no data are shown/hidden when the toggle changes.
  • Change measure to "Alkaline Phosphatase (ALP)" and confirm that visits with no data are shown/hidden when the toggle changes.
  • Test with the above with groups active (settings: {groups:["RACE"]})
  • Unscheduled visits are shown on initial load with {"unscheduled_visits":true}
  • Visits with no data are shown on initial load with {"visits_without_data": false}
  • Only the visits are hidden/shown when explicitly specified using {unscheduled_visit_values:["Unscheduled 2.1","Screening"]}

Make Wiki

Moved from GG-1376

Details: Britt created wiki in May '16 - please QC

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.