def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: axis_min = -0.5 axis_max = 10.5 hlines = [0, 5, 10] axis_label = "Progress towards goal (0-10)" title_start = "GBO Goal Rating Sheet – Goal " return [ TrackerInfo( value=self.goal_1_progress if self.rate_goal_1 else None, plot_label=title_start + "1", axis_label=axis_label, axis_min=axis_min, axis_max=axis_max, horizontal_lines=hlines, ), TrackerInfo( value=self.goal_2_progress if self.rate_goal_2 else None, plot_label=title_start + "2", axis_label=axis_label, axis_min=axis_min, axis_max=axis_max, horizontal_lines=hlines, ), TrackerInfo( value=self.goal_3_progress if self.rate_goal_3 else None, plot_label=title_start + "3", axis_label=axis_label, axis_min=axis_min, axis_max=axis_max, horizontal_lines=hlines, ), ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo(value=self.total_score(), plot_label="PANSS total score", axis_label="Total score ({}-{})".format( self.MIN_TOTAL, self.MAX_TOTAL), axis_min=self.MIN_TOTAL - 0.5, axis_max=self.MAX_TOTAL + 0.5), TrackerInfo(value=self.score_p(), plot_label="PANSS P score", axis_label="P score ({}-{})".format( self.MIN_P, self.MAX_P), axis_min=self.MIN_P - 0.5, axis_max=self.MAX_P + 0.5), TrackerInfo(value=self.score_n(), plot_label="PANSS N score", axis_label="N score ({}-{})".format( self.MIN_N, self.MAX_N), axis_min=self.MIN_N - 0.5, axis_max=self.MAX_N + 0.5), TrackerInfo(value=self.score_g(), plot_label="PANSS G score", axis_label="G score ({}-{})".format( self.MIN_G, self.MAX_G), axis_min=self.MIN_G - 0.5, axis_max=self.MAX_G + 0.5), TrackerInfo(value=self.composite(), plot_label="PANSS composite score ({} to {})".format( self.MIN_P_MINUS_N, self.MAX_P_MINUS_N), axis_label="P - N"), ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo( value=self.total_score(), plot_label="IES-R total score (lower is better)", axis_label=f"Total score (out of {self.MAX_TOTAL})", axis_min=-0.5, axis_max=self.MAX_TOTAL + 0.5, ), TrackerInfo( value=self.avoidance_score(), plot_label="IES-R avoidance score", axis_label=f"Avoidance score (out of {self.MAX_AVOIDANCE})", axis_min=-0.5, axis_max=self.MAX_AVOIDANCE + 0.5, ), TrackerInfo( value=self.intrusion_score(), plot_label="IES-R intrusion score", axis_label=f"Intrusion score (out of {self.MAX_INTRUSION})", axis_min=-0.5, axis_max=self.MAX_INTRUSION + 0.5, ), TrackerInfo( value=self.hyperarousal_score(), plot_label="IES-R hyperarousal score", axis_label= f"Hyperarousal score (out of {self.MAX_HYPERAROUSAL})", # noqa axis_min=-0.5, axis_max=self.MAX_HYPERAROUSAL + 0.5, ), ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: # $ signs enable TEX mode for matplotlib, e.g. "$BMI (kg/m^2)$" return [ TrackerInfo( value=self.bmi(), plot_label="Body mass index", axis_label="BMI (kg/m^2)", axis_min=10, axis_max=42, horizontal_lines=[13, 15, 16, 17, 17.5, 18.5, 25, 30, 35, 40], horizontal_labels=[ # positioned near the mid-range for some: TrackerLabel( 12.5, self.wxstring(req, "underweight_under_13"), LabelAlignment.top, ), TrackerLabel(14, self.wxstring(req, "underweight_13_15")), TrackerLabel( 15.5, self.wxstring(req, "underweight_15_16") ), TrackerLabel( 16.5, self.wxstring(req, "underweight_16_17") ), TrackerLabel( 17.25, self.wxstring(req, "underweight_17_17.5") ), TrackerLabel( 18, self.wxstring(req, "underweight_17.5_18.5") ), TrackerLabel(21.75, self.wxstring(req, "normal")), TrackerLabel(27.5, self.wxstring(req, "overweight")), TrackerLabel(32.5, self.wxstring(req, "obese_1")), TrackerLabel(37.6, self.wxstring(req, "obese_2")), TrackerLabel( 40.5, self.wxstring(req, "obese_3"), LabelAlignment.bottom, ), ], aspect_ratio=1.0, ), TrackerInfo( value=self.mass_kg, plot_label="Mass (kg)", axis_label="Mass (kg)", ), TrackerInfo( value=self.waist_cm, plot_label="Waist circumference (cm)", axis_label="Waist circumference (cm)", ), ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo(value=self.get_tto_qol(), plot_label="Quality of life: time trade-off", axis_label="TTO QoL (0-1)", axis_min=0, axis_max=1), TrackerInfo(value=self.get_rs_qol(), plot_label="Quality of life: rating scale", axis_label="RS QoL (0-1)", axis_min=0, axis_max=1), ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo( value=self.total_score(), plot_label="PHQ-9 total score (rating depressive symptoms)", axis_label="Score for Q1-9 (out of {})".format( self.MAX_SCORE_MAIN), axis_min=-0.5, axis_max=self.MAX_SCORE_MAIN + 0.5, axis_ticks=[ TrackerAxisTick(27, "27"), TrackerAxisTick(25, "25"), TrackerAxisTick(20, "20"), TrackerAxisTick(15, "15"), TrackerAxisTick(10, "10"), TrackerAxisTick(5, "5"), TrackerAxisTick(0, "0"), ], horizontal_lines=[19.5, 14.5, 9.5, 4.5], horizontal_labels=[ TrackerLabel(23, req.wappstring("severe")), TrackerLabel(17, req.wappstring("moderately_severe")), TrackerLabel(12, req.wappstring("moderate")), TrackerLabel(7, req.wappstring("mild")), TrackerLabel(2.25, req.wappstring("none")), ]) ]
def get_crp_tracker(self, req: CamcopsRequest) -> TrackerInfo: axis_min = -0.5 axis_max = 9.0 axis_ticks = [ TrackerAxisTick(n, str(n)) for n in range(0, int(axis_max) + 1) ] horizontal_lines = [ self.CRP_MODERATE_HIGH_CUTOFF, self.CRP_LOW_MODERATE_CUTOFF, self.CRP_REMISSION_LOW_CUTOFF, 0, ] horizontal_labels = [ TrackerLabel(6.8, self.wxstring(req, "high")), TrackerLabel(3.75, self.wxstring(req, "moderate")), TrackerLabel(2.65, self.wxstring(req, "low")), TrackerLabel(1.2, self.wxstring(req, "remission")), ] return TrackerInfo( value=self.das28_crp(), plot_label="DAS28-CRP", axis_label="DAS28-CRP", axis_min=axis_min, axis_max=axis_max, axis_ticks=axis_ticks, horizontal_lines=horizontal_lines, horizontal_labels=horizontal_labels, )
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo( value=self.clinical_score(), plot_label="CORE-10 clinical score (rating distress)", axis_label="Clinical score (out of {})".format(self.MAX_SCORE), axis_min=-0.5, axis_max=self.MAX_SCORE + 0.5, axis_ticks=[ TrackerAxisTick(40, "40"), TrackerAxisTick(35, "35"), TrackerAxisTick(30, "30"), TrackerAxisTick(25, "25"), TrackerAxisTick(20, "20"), TrackerAxisTick(15, "15"), TrackerAxisTick(10, "10"), TrackerAxisTick(5, "5"), TrackerAxisTick(0, "0"), ], horizontal_lines=[ 30, 20, 10, ], ) ]
def get_esr_tracker(self, req: CamcopsRequest) -> TrackerInfo: axis_min = -0.5 axis_max = 10.0 axis_ticks = [ TrackerAxisTick(n, str(n)) for n in range(0, int(axis_max) + 1) ] horizontal_lines = [ self.ESR_MODERATE_HIGH_CUTOFF, self.ESR_LOW_MODERATE_CUTOFF, self.ESR_REMISSION_LOW_CUTOFF, 0, ] horizontal_labels = [ TrackerLabel(7.55, self.wxstring(req, "high")), TrackerLabel(4.15, self.wxstring(req, "moderate")), TrackerLabel(2.9, self.wxstring(req, "low")), TrackerLabel(1.3, self.wxstring(req, "remission")), ] return TrackerInfo( value=self.das28_esr(), plot_label="DAS28-ESR", axis_label="DAS28-ESR", axis_min=axis_min, axis_max=axis_max, axis_ticks=axis_ticks, horizontal_lines=horizontal_lines, horizontal_labels=horizontal_labels, )
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: line_step = 20 preliminary_cutoff = 33 return [ TrackerInfo( value=self.total_score(), plot_label="PCL-5 total score", axis_label=f"Total score ({self.MIN_SCORE}-{self.MAX_SCORE})", axis_min=self.MIN_SCORE - 0.5, axis_max=self.MAX_SCORE + 0.5, axis_ticks=regular_tracker_axis_ticks_int(self.MIN_SCORE, self.MAX_SCORE, step=line_step), horizontal_lines=equally_spaced_int( self.MIN_SCORE + line_step, self.MAX_SCORE - line_step, step=line_step, ) + [preliminary_cutoff], horizontal_labels=[ TrackerLabel( preliminary_cutoff, self.wxstring(req, "preliminary_cutoff"), ) ], ) ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: line_step = 20 threshold_line = self.DEPRESSION_RISK_THRESHOLD - 0.5 # noinspection PyTypeChecker return [ TrackerInfo( value=self.total_score(), plot_label="CESD total score", axis_label=f"Total score ({self.MIN_SCORE}-{self.MAX_SCORE})", axis_min=self.MIN_SCORE - 0.5, axis_max=self.MAX_SCORE + 0.5, axis_ticks=regular_tracker_axis_ticks_int(self.MIN_SCORE, self.MAX_SCORE, step=line_step), horizontal_lines=equally_spaced_int( self.MIN_SCORE + line_step, self.MAX_SCORE - line_step, step=line_step, ) + [threshold_line], horizontal_labels=[ TrackerLabel( threshold_line, self.wxstring(req, "depression_or_risk_of"), ) ], ) ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: axis_min = self.MINIMUM - 0.5 axis_max = self.MAXIMUM + 0.5 axis_ticks = [ TrackerAxisTick(n, str(n)) for n in range(0, int(axis_max) + 1) ] horizontal_lines = [self.MAXIMUM, self.ACTIVE_CUTOFF, self.MINIMUM] horizontal_labels = [ TrackerLabel(self.ACTIVE_CUTOFF + 0.5, self.wxstring(req, "active")), TrackerLabel(self.ACTIVE_CUTOFF - 0.5, self.wxstring(req, "inactive")), ] return [ TrackerInfo( value=self.basdai(), plot_label="BASDAI", axis_label="BASDAI", axis_min=axis_min, axis_max=axis_max, axis_ticks=axis_ticks, horizontal_lines=horizontal_lines, horizontal_labels=horizontal_labels, ) ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo( value=self.total_score(), plot_label="PHQ-9 total score (rating depressive symptoms)", axis_label=f"Score for Q1-9 (out of {self.MAX_SCORE_MAIN})", axis_min=-0.5, axis_max=self.MAX_SCORE_MAIN + 0.5, axis_ticks=[ TrackerAxisTick(27, "27"), TrackerAxisTick(25, "25"), TrackerAxisTick(20, "20"), TrackerAxisTick(15, "15"), TrackerAxisTick(10, "10"), TrackerAxisTick(5, "5"), TrackerAxisTick(0, "0"), ], horizontal_lines=[19.5, 14.5, 9.5, 4.5], horizontal_labels=[ TrackerLabel(23, req.sstring(SS.SEVERE)), TrackerLabel(17, req.sstring(SS.MODERATELY_SEVERE)), TrackerLabel(12, req.sstring(SS.MODERATE)), TrackerLabel(7, req.sstring(SS.MILD)), TrackerLabel(2.25, req.sstring(SS.NONE)), ], ) ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo( value=self.anxiety_score(), plot_label="HADS anxiety score", axis_label=f"Anxiety score (out of {self.MAX_ANX_SCORE})", axis_min=-0.5, axis_max=self.MAX_ANX_SCORE + 0.5, ), TrackerInfo( value=self.depression_score(), plot_label="HADS depression score", axis_label=f"Depression score (out of {self.MAX_DEP_SCORE})", axis_min=-0.5, axis_max=self.MAX_DEP_SCORE + 0.5, ), ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [TrackerInfo( value=self.total_score(), plot_label="CGI total score", axis_label="Total score (out of {})".format(self.MAX_SCORE), axis_min=-0.5, axis_max=self.MAX_SCORE + 0.5 )]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [TrackerInfo( value=self.total_score(), plot_label="BDI total score (rating depressive symptoms)", axis_label="Score for Q1-21 (out of {})".format(MAX_SCORE), axis_min=-0.5, axis_max=MAX_SCORE + 0.5 )]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo(value=self.total_score(), plot_label="GAF score (rating overall functioning)", axis_label="Score (1-100)", axis_min=0.5, axis_max=100.5) ]
def tracker_element(cls, value: float, plot_label: str) -> TrackerInfo: return TrackerInfo( value=value, plot_label="RAND-36: " + plot_label, axis_label="Scale score (out of 100)", axis_min=-0.5, axis_max=100.5, )
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo(value=self.utility, plot_label="Quality of life: standard gamble", axis_label="QoL (0-1)", axis_min=0, axis_max=1) ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo(value=self.total_score(), plot_label="CAPS total score", axis_label="Total score (out of 32)", axis_min=-0.5, axis_max=32.5) ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: scoredict = self.get_score() return [ TrackerInfo( value=scoredict['total'], plot_label="IFS total score (higher is better)", axis_label="Total score (out of {})".format(self.MAX_TOTAL), axis_min=-0.5, axis_max=self.MAX_TOTAL + 0.5 ), TrackerInfo( value=scoredict['wm'], plot_label="IFS working memory index (higher is better)", axis_label="Total score (out of {})".format(self.MAX_WM), axis_min=-0.5, axis_max=self.MAX_WM + 0.5 ), ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [TrackerInfo( value=self.total_score(), plot_label="SWEMWBS total score (rating mental well-being)", axis_label="Total score ({}-{})".format( self.MINTOTALSCORE, self.MAXTOTALSCORE), axis_min=self.MINTOTALSCORE - 0.5, axis_max=self.MAXTOTALSCORE + 0.5 )]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo(value=self.total_score(), plot_label="PDSS total score (lower is better)", axis_label="Total score (out of {})".format( self.MAX_TOTAL), axis_min=-0.5, axis_max=self.MAX_TOTAL + 0.5) ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo(value=self.total_score(), plot_label="WSAS total score (lower is better)", axis_label="Total score (out of {}–{})".format( self.MAX_IF_RETIRED, self.MAX_IF_WORKING), axis_min=-0.5, axis_max=self.MAX_IF_WORKING + 0.5) ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo(value=self.total_score(), plot_label="ACE-III total score", axis_label="Total score (out of 100)", axis_min=-0.5, axis_max=100.5, horizontal_lines=[82.5, 88.5]) ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [TrackerInfo( value=self.total_score(), plot_label="DAST total score", axis_label="Total score (out of {})".format(self.NQUESTIONS), axis_min=-0.5, axis_max=self.NQUESTIONS + 0.5, horizontal_lines=[10.5, 5.5] )]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo(value=self.total_score(), plot_label="AUDIT total score", axis_label="Total score (out of 40)", axis_min=-0.5, axis_max=40.5, horizontal_lines=[7.5]) ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: scoredict = self.get_score() return [ TrackerInfo( value=scoredict["total"], plot_label="IFS total score (higher is better)", axis_label=f"Total score (out of {self.MAX_TOTAL})", axis_min=-0.5, axis_max=self.MAX_TOTAL + 0.5, ), TrackerInfo( value=scoredict["wm"], plot_label="IFS working memory index (higher is better)", axis_label=f"Total score (out of {self.MAX_WM})", axis_min=-0.5, axis_max=self.MAX_WM + 0.5, ), ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: return [ TrackerInfo( value=self.total_score(), plot_label="PSWQ total score (lower is better)", axis_label=f"Total score ({self.MIN_TOTAL}–{self.MAX_TOTAL})", axis_min=self.MIN_TOTAL - 0.5, axis_max=self.MAX_TOTAL + 0.5, ) ]
def get_trackers(self, req: CamcopsRequest) -> List[TrackerInfo]: axis_min = -0.5 axis_max = 7.5 axis_ticks = [ TrackerAxisTick(n, str(n)) for n in range(0, int(axis_max) + 1) ] horizontal_lines = [ self.HIGH_VERY_HIGH_CUTOFF, self.MODERATE_HIGH_CUTOFF, self.INACTIVE_MODERATE_CUTOFF, 0, ] horizontal_labels = [ TrackerLabel(5.25, self.wxstring(req, "very_high")), TrackerLabel(2.8, self.wxstring(req, "high")), TrackerLabel(1.7, self.wxstring(req, "moderate")), TrackerLabel(0.65, self.wxstring(req, "inactive")), ] return [ TrackerInfo( value=self.asdas_crp(), plot_label="ASDAS-CRP", axis_label="ASDAS-CRP", axis_min=axis_min, axis_max=axis_max, axis_ticks=axis_ticks, horizontal_lines=horizontal_lines, horizontal_labels=horizontal_labels, ), TrackerInfo( value=self.asdas_esr(), plot_label="ASDAS-ESR", axis_label="ASDAS-ESR", axis_min=axis_min, axis_max=axis_max, axis_ticks=axis_ticks, horizontal_lines=horizontal_lines, horizontal_labels=horizontal_labels, ), ]