def _plot_default(self):
     plot = Plot(self.plot_data)
     plot.x_axis = None
     plot.y_axis = None
     plot.x_grid = None
     plot.y_grid = None
     plot.padding = 0
     plot.plot(('x', 'image_histogram'), render_style='connectedhold')
     plot.plot(('x', 'mapped_histogram'), type='filled_line', fill_color='yellow',
         render_style='connectedhold', name='mapped_histogram')
     intercept_tool = AttributeDragTool(component=plot, model=self.unit_map,
             x_attr='intercept')
     slope_tool = AttributeDragTool(component=plot, model=self.unit_map,
             x_attr='slope', modifier_keys=set(['shift']))
     gamma_tool = AttributeDragTool(component=plot, model=self.unit_map,
             x_attr='gamma', modifier_keys=set(['control']))
     plot.tools += [intercept_tool, slope_tool, gamma_tool]
     intercept_overlay =  SimpleInspectorOverlay(component=plot, align='ul',
             inspector=intercept_tool,
             field_formatters=[[basic_formatter('Intercept', 2)]]
         )  
     slope_overlay =  SimpleInspectorOverlay(component=plot, align='ul',
             inspector=slope_tool,
             field_formatters=[[basic_formatter('Slope', 2)]]
         )  
     gamma_overlay =  SimpleInspectorOverlay(component=plot, align='ul',
             inspector=gamma_tool,
             field_formatters=[[basic_formatter('Gamma', 2)]]
         )  
     plot.overlays += [intercept_overlay, slope_overlay, gamma_overlay]
     return plot
 def _plot_default(self):
     plot = Plot(self.plot_data)
     plot.x_axis = None
     plot.y_axis = None
     plot.padding = 0
     self.tcm = TransformColorMapper.from_color_map(gray)
     self.tcm.unit_func = self.unit_map.function
     self.unit_map.on_trait_change(self.map_changed, 'function')
     plot.img_plot('image', colormap=self.tcm)
     return plot
 def _plot_default(self):
     plot = Plot(self.plot_data)
     plot.x_axis = None
     plot.y_axis = None
     plot.x_grid = None
     plot.y_grid = None
     plot.padding = 0
     plot.plot('image_histogram')
     plot.plot('mapped_histogram', type='filled_line', fill_color='yellow')
     return plot
 def _plot_default(self):
     plot = Plot(self.plot_data)
     plot.x_axis = None
     plot.y_axis = None
     plot.x_grid = None
     plot.y_grid = None
     plot.padding = 0
     plot.plot(('x', 'image_histogram'), render_style='connectedhold')
     plot.plot(('x', 'mapped_histogram'), type='filled_line', fill_color='yellow',
         render_style='connectedhold', name='mapped_histogram')
     intercept_tool = AttributeDragTool(component=plot,
         model=self.unit_map, x_attr='intercept')
     plot.tools.append(intercept_tool)
     return plot
 def _main_plot_default(self):
     p = Plot(self.plot_data, default_origin='top left')
     p.padding = 0
     self.original_plot = p.img_plot('original_image', colormap=bone,
                                     alpha=self.original_alpha,
                                     bgcolor=self.background_color_)[0]
     self.canny_plot = p.img_plot('canny_plot_image',
                                  alpha=self.canny_alpha)[0]
     p.x_axis = None
     p.y_axis = None
     self.segments_overlay = SegmentsOverlay(component=self.canny_plot,
                                             image_size=self.image.canny_image.shape)
     p.overlays.append(self.segments_overlay)
     return p
 def _main_plot_default(self):
     p = Plot(self.plot_data, default_origin='top left')
     p.padding = 0
     self.original_plot = p.img_plot('original_image',
                                     colormap=bone,
                                     alpha=self.original_alpha,
                                     bgcolor=self.background_color_)[0]
     self.canny_plot = p.img_plot('canny_plot_image',
                                  alpha=self.canny_alpha)[0]
     p.x_axis = None
     p.y_axis = None
     self.segments_overlay = SegmentsOverlay(
         component=self.canny_plot, image_size=self.image.canny_image.shape)
     p.overlays.append(self.segments_overlay)
     return p
Beispiel #7
0
 def _create_digits_plot(self):
     data = ArrayPlotData(image=numpy.zeros((2, 2)))
     plot = Plot(data,
                 width=500,
                 height=500,
                 resizable='hv',
                 aspect_ratio=37.0 / 9,
                 padding=8,
                 padding_left=48,
                 padding_bottom=36)
     plot.img_plot('image', xbounds=(0, 1), ybounds=(0, 1), colormap=hot)
     plot.plots['plot0'][0].value_range.high_setting = 1
     plot.plots['plot0'][0].value_range.low_setting = 0
     plot.x_axis = None
     plot.y_axis = None
     self.digits_data = data
     self.digits_plot = plot
    def _plot_default(self):
        plot = Plot(self.plot_data)
        plot.x_axis = None
        plot.y_axis = None
        plot.x_grid = None
        plot.y_grid = None
        plot.padding = 0
        plot.plot(("x", "image_histogram"), render_style="connectedhold")
        plot.plot(
            ("x", "mapped_histogram"),
            type="filled_line",
            fill_color="yellow",
            render_style="connectedhold",
            name="mapped_histogram",
        )

        low_overlay = AttributeLineOverlay(component=plot, model=self.unit_map, x_attr="low", orientation="vertical")
        high_overlay = AttributeLineOverlay(component=plot, model=self.unit_map, x_attr="high", orientation="vertical")

        intercept_tool = AttributeDragTool(component=plot, model=self.unit_map, x_attr="intercept")
        slope_tool = AttributeDragTool(
            component=plot, model=self.unit_map, x_attr="slope", modifier_keys=set(["shift"])
        )
        gamma_tool = AttributeDragTool(
            component=plot, model=self.unit_map, x_attr="gamma", modifier_keys=set(["control"])
        )
        plot.tools += [intercept_tool, slope_tool, gamma_tool]

        intercept_overlay = SimpleInspectorOverlay(
            component=plot, align="ul", inspector=intercept_tool, field_formatters=[[basic_formatter("Intercept", 2)]]
        )
        slope_overlay = SimpleInspectorOverlay(
            component=plot, align="ul", inspector=slope_tool, field_formatters=[[basic_formatter("Slope", 2)]]
        )
        gamma_overlay = SimpleInspectorOverlay(
            component=plot, align="ul", inspector=gamma_tool, field_formatters=[[basic_formatter("Gamma", 2)]]
        )

        plot.overlays += [intercept_overlay, slope_overlay, gamma_overlay, low_overlay, high_overlay]
        return plot
Beispiel #9
0
    def _plot(self, x, y, z, scale):
        pd = ArrayPlotData()
     #   pd.set_data("imagedata", z)
        plot = Plot(pd, padding_left=60, fill_padding=True)
        plot.bgcolor = 'white'
        cmap = fix(jet, (0, z.max()))
        plot.default_origin = 'bottom left' # origin = 'top left' # to flip y-axis

        fid = FunctionImageData(func=self._prepare_data_for_window, data_range=plot.range2d)
        pd.set_data("imagedata", fid)

        self.img_plot = plot.img_plot("imagedata", name="surface2d",
                      xbounds=(np.min(x), np.max(x)),
                      ybounds=(1.0, y[-1,-1]),
                      colormap=cmap, hide_grids=True, interpolation='nearest'
                     # origin=origin,
                      )[0]
        #plot.default_origin = origin
        
        plot.x_axis = MyPlotAxis(component=plot, orientation='bottom')
        plot.y_axis = MyPlotAxis(component=plot, orientation='left')
        plot.x_axis.title = u'Angle (2\u0398)'

        tick_font = settings.tick_font
        plot.x_axis.title_font = settings.axis_title_font
        plot.y_axis.title_font = settings.axis_title_font
        plot.x_axis.tick_label_font = tick_font
        plot.y_axis.tick_label_font = tick_font
        plot.y_axis.title = "Dataset"
        # if <10 datasets we want to reduce down the tickmarks to multiples
        if len(y)<10:
            plot.y_axis.tick_interval = 1.0
        else:
            plot.y_axis.tick_interval = len(y)/10
        actual_plot = plot.plots["surface2d"][0]

        self.plot_zoom_tool = ClickUndoZoomTool(
            plot, always_on=True, pointer="cross",
            tool_mode="range",
            axis="index",
            drag_button=settings.zoom_button,
            undo_button=settings.undo_button,
            x_min_zoom_factor=-np.inf, y_min_zoom_factor=-np.inf,
        )
        plot.overlays.append(self.plot_zoom_tool)
        plot.tools.append(TraitsTool(plot))

        # Add a color bar
        colormap = actual_plot.color_mapper
        colorbar = ColorBar(index_mapper=LinearMapper(range=colormap.range),
                        color_mapper=colormap,
                        plot=actual_plot,
                        orientation='v',
                        resizable='v',
                        width=30,
                        padding=40,
                        padding_top=50,
                        fill_padding=True)

        colorbar._axis.title_font = settings.axis_title_font
        colorbar._axis.tick_label_font = settings.tick_font


        # Add pan and zoom tools to the colorbar
        self.colorbar_zoom_tool = ClickUndoZoomTool(colorbar,
                                                    axis="index",
                                                    tool_mode="range",
                                                    always_on=True,
                                                    drag_button=settings.zoom_button,
                                                   undo_button=settings.undo_button)
        pan_tool = PanToolWithHistory(colorbar,
                                      history_tool=self.colorbar_zoom_tool,
                                      constrain_direction="y", constrain=True,
                                      drag_button=settings.pan_button)
        colorbar.tools.append(pan_tool)
        colorbar.overlays.append(self.colorbar_zoom_tool)

        # Add a label to the top of the color bar
        colorbar_label = PlotLabel(
            u'Intensity\n{:^9}'.format('(' + get_value_scale_label(scale) + ')'),
            component=colorbar,
            font=settings.axis_title_font,
        )
        colorbar.overlays.append(colorbar_label)
        colorbar.tools.append(TraitsTool(colorbar))

        # Add the plot and colorbar side-by-side
        container = HPlotContainer(use_backbuffer=True)
        container.add(plot)
        container.add(colorbar)
        self.twod_plot = plot 
        return container
Beispiel #10
0
    def _plot(self, x, y, z, scale):
        pd = ArrayPlotData()
        #   pd.set_data("imagedata", z)
        plot = Plot(pd, padding_left=60, fill_padding=True)
        plot.bgcolor = 'white'
        cmap = fix(jet, (0, z.max()))
        plot.default_origin = 'bottom left'  # origin = 'top left' # to flip y-axis

        fid = FunctionImageData(func=self._prepare_data_for_window,
                                data_range=plot.range2d)
        pd.set_data("imagedata", fid)

        self.img_plot = plot.img_plot("imagedata",
                                      name="surface2d",
                                      xbounds=(np.min(x), np.max(x)),
                                      ybounds=(1.0, y[-1, -1]),
                                      colormap=cmap,
                                      hide_grids=True,
                                      interpolation='nearest'
                                      # origin=origin,
                                      )[0]
        #plot.default_origin = origin

        plot.x_axis = MyPlotAxis(component=plot, orientation='bottom')
        plot.y_axis = MyPlotAxis(component=plot, orientation='left')
        plot.x_axis.title = u'Angle (2\u0398)'

        tick_font = settings.tick_font
        plot.x_axis.title_font = settings.axis_title_font
        plot.y_axis.title_font = settings.axis_title_font
        plot.x_axis.tick_label_font = tick_font
        plot.y_axis.tick_label_font = tick_font
        plot.y_axis.title = "Dataset"
        # if <10 datasets we want to reduce down the tickmarks to multiples
        if len(y) < 10:
            plot.y_axis.tick_interval = 1.0
        else:
            plot.y_axis.tick_interval = len(y) / 10
        actual_plot = plot.plots["surface2d"][0]

        self.plot_zoom_tool = ClickUndoZoomTool(
            plot,
            always_on=True,
            pointer="cross",
            tool_mode="range",
            axis="index",
            drag_button=settings.zoom_button,
            undo_button=settings.undo_button,
            x_min_zoom_factor=-np.inf,
            y_min_zoom_factor=-np.inf,
        )
        plot.overlays.append(self.plot_zoom_tool)
        plot.tools.append(TraitsTool(plot))

        # Add a color bar
        colormap = actual_plot.color_mapper
        colorbar = ColorBar(index_mapper=LinearMapper(range=colormap.range),
                            color_mapper=colormap,
                            plot=actual_plot,
                            orientation='v',
                            resizable='v',
                            width=30,
                            padding=40,
                            padding_top=50,
                            fill_padding=True)

        colorbar._axis.title_font = settings.axis_title_font
        colorbar._axis.tick_label_font = settings.tick_font

        # Add pan and zoom tools to the colorbar
        self.colorbar_zoom_tool = ClickUndoZoomTool(
            colorbar,
            axis="index",
            tool_mode="range",
            always_on=True,
            drag_button=settings.zoom_button,
            undo_button=settings.undo_button)
        pan_tool = PanToolWithHistory(colorbar,
                                      history_tool=self.colorbar_zoom_tool,
                                      constrain_direction="y",
                                      constrain=True,
                                      drag_button=settings.pan_button)
        colorbar.tools.append(pan_tool)
        colorbar.overlays.append(self.colorbar_zoom_tool)

        # Add a label to the top of the color bar
        colorbar_label = PlotLabel(
            u'Intensity\n{:^9}'.format('(' + get_value_scale_label(scale) +
                                       ')'),
            component=colorbar,
            font=settings.axis_title_font,
        )
        colorbar.overlays.append(colorbar_label)
        colorbar.tools.append(TraitsTool(colorbar))

        # Add the plot and colorbar side-by-side
        container = HPlotContainer(use_backbuffer=True)
        container.add(plot)
        container.add(colorbar)
        self.twod_plot = plot
        return container