def _processGaugeData(self, bundle, trackway, data): pesCount = bundle.leftPes.count + bundle.rightPes.count record = {'name':trackway.name, 'count':pesCount} gaugeData = data['gauges'] try: value = NumericUtils.getWeightedMeanAndDeviation(gaugeData.abs) record['abs'] = value.value record['absUnc'] = value.uncertainty self._trackwayGauges.abs.append((pesCount, value)) except ZeroDivisionError: return widthValue = NumericUtils.getWeightedMeanAndDeviation(gaugeData.width) record['width'] = widthValue.value record['widthUnc'] = widthValue.uncertainty self._trackwayGauges.width.append((pesCount, widthValue)) if gaugeData.pace: value = NumericUtils.getWeightedMeanAndDeviation(gaugeData.pace) record['pace'] = value.value record['paceUnc'] = value.uncertainty self._trackwayGauges.pace.append((pesCount, value)) else: record['pace'] = '' record['paceUnc'] = '' if gaugeData.stride: value = NumericUtils.getWeightedMeanAndDeviation(gaugeData.stride) record['stride'] = value.value record['strideUnc'] = value.uncertainty self._trackwayGauges.stride.append((pesCount, value)) else: record['stride'] = '' record['strideUnc'] = '' self._trackwayCsv.addRow(record) plot = ScatterPlot( data=data['points'], title='%s Width-Normalized Gauges (%s)' % (trackway.name, widthValue.label), xLabel='Track Position (m)', yLabel='Gauge (AU)') self._paths.append(plot.save(self.getTempFilePath(extension='pdf'))) analysisTrackway = trackway.getAnalysisPair(self.analysisSession) analysisTrackway.simpleGauge = widthValue.raw analysisTrackway.simpleGaugeUnc = widthValue.rawUncertainty