def _update_experiment_plot(self): index_range = ChannelDataRange(trig_delay=0) index_range.sources = [self.data.contact_digital] index_mapper = LinearMapper(range=index_range) container = OverlayPlotContainer(padding=[20, 20, 50, 5]) self._add_experiment_plots(index_mapper, container) # Add axes and grids to the first plot plot = container.components[0] add_default_grids(plot, minor_index=0.25, major_index=1) add_time_axis(plot, orientation='top') self.experiment_plot = container
def _generate_experiment_plot(self): index_range = ChannelDataRange(trig_delay=0) index_range.sources = [self.data.spout_TTL] index_mapper = LinearMapper(range=index_range) self.index_range = index_range container = OverlayPlotContainer(padding=[20, 20, 50, 5]) self._add_experiment_plots(index_mapper, container, 0.5) plot = container.components[0] add_default_grids(plot, major_index=1, minor_index=0.25) add_time_axis(plot, orientation='top') self.experiment_plot = container
def _data_changed(self): index_range = ChannelDataRange(trig_delay=0) index_range.add(self.data.spout_TTL) index_mapper = LinearMapper(range=index_range) value_range = DataRange1D(low_setting=-0, high_setting=1) value_mapper = LinearMapper(range=value_range) container = OverlayPlotContainer(bgcolor='white', fill_padding=True, padding=50, spacing=50) # SIGNAL plot = TTLPlot(source=self.data.signal_TTL, index_mapper=index_mapper, value_mapper=value_mapper, fill_color=(0, 1, 0, 0.5), rect_height=0.2, rect_center=0.9) container.add(plot) # PUMP plot = TTLPlot(source=self.data.pump_TTL, index_mapper=index_mapper, value_mapper=value_mapper, fill_color=(0, 0, 1, 0.5), rect_height=0.2, rect_center=0.7) container.add(plot) # SPOUT plot = TTLPlot(source=self.data.spout_TTL, reference=0, index_mapper=index_mapper, value_mapper=value_mapper, fill_color=(1, 1, 1, 0.5), rect_height=0.2, rect_center=0.5) container.add(plot) # OVERRIDE plot = TTLPlot(source=self.data.override_TTL, reference=0, index_mapper=index_mapper, value_mapper=value_mapper, fill_color=(1, 0, 0, 0.5), rect_height=0.2, rect_center=0.3) container.add(plot) # FREE RUN plot = TTLPlot(source=self.data.free_run_TTL, reference=0, index_mapper=index_mapper, value_mapper=value_mapper, fill_color=(1, 0, 0, 0.5), rect_height=0.2, rect_center=0.1) container.add(plot) # Add the axes and grids grid = PlotGrid(mapper=plot.index_mapper, component=plot, orientation='vertical', line_color='lightgray', line_style='dot', grid_interval=0.25) plot.underlays.append(grid) grid = PlotGrid(mapper=plot.index_mapper, component=plot, orientation='vertical', line_color='lightgray', line_style='solid', grid_interval=1) plot.underlays.append(grid) add_time_axis(plot) add_default_grids(plot, major_index=1, minor_index=0.25) # set up microphone plot value_range = DataRange1D(low_setting=0, high_setting=80) value_mapper = LinearMapper(range=value_range) plot = RMSChannelPlot(source=self.data.microphone, index_mapper=index_mapper, value_mapper=value_mapper, line_color=(0, 0, 0, 0.25)) self.microphone_plot = plot container.add(plot) self.contact_plot = container