Esempio n. 1
0
    def plot(self, pylab, axis, space, value, params={}):
        params0 = dict(color_shadow=[1.0, 0.8, 0.8],
                       markers='k.',
                       markers_params={})
        params0.update(params)

        color_shadow = params0.pop('color_shadow')
        markers = params0.pop('markers')
        markers_params = params0.pop('markers_params')
        if params0:
            raise ValueError(params0)

        self.axis = axis
        self.check_plot_space(space)

        minimals = [self._get_screen_coords(_, axis) for _ in value.minimals]
        print 'minimals', minimals
        R2 = PosetProduct((Rcomp(), Rcomp()))
        v = R2.Us(minimals)

        from mcdp_report.generic_report_utils import extra_space_finite

        mcdp_dev_warning('incomplete PlotterUR')
        logger.error('todo: change this to plot a line')
        plot_upset_R2(pylab,
                      v,
                      axis,
                      extra_space_shadow=extra_space_finite,
                      color_shadow=color_shadow,
                      markers=markers,
                      marker_params=markers_params)
Esempio n. 2
0
    def plot(self, pylab, axis, space, value, params={}):
        params0 = dict(color_shadow=[1.0, 0.8, 0.8],
                       markers='k.',
                       markers_params={})
        params0.update(params)
        color_shadow = params0['color_shadow']
        markers = params0['markers']
        markers_params = params0['markers_params']

        self.check_plot_space(space)
        #         tu = get_types_universe()
        #         P_TO_S, _ = tu.get_embedding(space.P, self.S)

        points2d = [self.toR2(self.P_to_S(_)) for _ in value.minimals]

        R2 = PosetProduct((Rcomp(), Rcomp()))

        class MyUpperSet(UpperSet):
            def __init__(self, minimals, P):
                self.minimals = frozenset(minimals)
                self.P = P

        v = MyUpperSet(points2d, P=R2)
        plot_upset_R2(pylab,
                      v,
                      axis,
                      color_shadow=color_shadow,
                      markers=markers,
                      marker_params=markers_params)
Esempio n. 3
0
    def plot(self, pylab, axis, space, value, params={}):
        params0 = dict(color_shadow=[1.0, 0.8, 0.8], markers="k.", markers_params={})
        params0.update(params)

        color_shadow = params0.pop("color_shadow")
        markers = params0.pop("markers")
        markers_params = params0.pop("markers_params")
        if params0:
            raise ValueError(params0)

        self.axis = axis
        self.check_plot_space(space)

        minimals = [self._get_screen_coords(_, axis) for _ in value.minimals]
        print "minimals", minimals
        R2 = PosetProduct((Rcomp(), Rcomp()))
        v = R2.Us(minimals)

        from mcdp_report.generic_report_utils import extra_space_finite

        mcdp_dev_warning("incomplete PlotterUR")
        logger.error("todo: change this to plot a line")
        plot_upset_R2(
            pylab,
            v,
            axis,
            extra_space_shadow=extra_space_finite,
            color_shadow=color_shadow,
            markers=markers,
            marker_params=markers_params,
        )
Esempio n. 4
0
    def plot(self, pylab, axis, space, value, params={}):
        params0 = dict(color_shadow=[1.0, 0.8, 0.8], markers='k.',
                       markers_params={})
        params0.update(params)
        color_shadow = params0['color_shadow']
        markers = params0['markers']
        markers_params = params0['markers_params']
        
        self.check_plot_space(space)
#         tu = get_types_universe()
#         P_TO_S, _ = tu.get_embedding(space.P, self.S)

        points2d = [self.toR2(self.P_to_S(_)) for _ in value.minimals]

        R2 = PosetProduct((Rcomp(), Rcomp()))


        class MyUpperSet(UpperSet):

            def __init__(self, minimals, P):
                self.minimals = frozenset(minimals)
                self.P = P


        v = MyUpperSet(points2d, P=R2)
        plot_upset_R2(pylab, v, axis,
                      color_shadow=color_shadow, markers=markers,
                      marker_params=markers_params)
Esempio n. 5
0
    def plot(self, pylab, axis, space, value, params={}):
        params0 = dict(color_shadow=[1.0, 0.8, 0.8],
                       markers='k.',
                       markers_params={})
        params0.update(params)

        color_shadow = params0.pop('color_shadow')
        markers = params0.pop('markers')
        markers_params = params0.pop('markers_params')
        if params0:
            msg = 'Extra parameters given.'
            raise_desc(ValueError, msg, params0=params0)

        self.axis = axis
        self.check_plot_space(space)

        #         tu = get_types_universe()
        #         P_TO_S, _ = tu.get_embedding(space.P, self.R2)

        minimals = [
            self._get_screen_coords(self.P_to_S(_), axis)
            for _ in value.minimals
        ]

        minimals = poset_minima(minimals, self.R2.leq)
        v = self.R2.Us(minimals)

        from mcdp_report.generic_report_utils import extra_space_finite
        plot_upset_R2(pylab,
                      v,
                      axis,
                      extra_space_shadow=extra_space_finite,
                      color_shadow=color_shadow,
                      markers=markers,
                      marker_params=markers_params)
Esempio n. 6
0
def report_plane2(data):
    matplotlib_settings()
    cs = CommonStats(data)
    r = Report()
    
    what_to_plot_res = dict(total_mass="kg", total_cost="USD")
    what_to_plot_fun = dict(endurance="Wh", extra_payload="g")

    plot_all_directions(r, queries=data['queries'], results=data['results'],
                        what_to_plot_res=what_to_plot_res,
                        what_to_plot_fun=what_to_plot_fun)
    
    fig1 = dict(figsize=(3, 3)) 
    fig2 = dict(figsize=(4, 4))
    
    fnames = ('endurance', 'extra_payload')
    rnames = ('total_cost', 'total_mass')
    
    axis = (108, 145,  0.05, 0.8)
    axis2 = (105, 111.5,  0.05, 0.27)
    fs, rs = cs.iterate(fnames, rnames)
    
    colors = get_colors(len(fs))
    f = r.figure()
    
    with f.plot('resources1', **fig1) as pylab:
        ieee_spines_zoom3(pylab)
  
        for i, ((f1, f2), resources) in enumerate(zip(fs, rs)):
            color = colors[i]
            if resources:
                marker = 'k.'
            else:
                marker = 'x'
            pylab.plot(f1, f2, marker, markerfacecolor=color, clip_on=False)
  
        pylab.xlabel('endurance [min]')
        pylab.ylabel('extra_payload [g]')
#         pylab.xticks([0, 30, 60, 90, 120])
        set_axis_colors(pylab, color_functions, color_functions)
        

    params0 = dict(color_shadow=[1.0, 0.8, 0.8], markers='k.',
                       markers_params={})

    color_shadow = params0['color_shadow']
    markers = params0['markers']

    P = parse_poset('dimensionless x dimensionless')
    
    with f.plot('resources2', **fig2) as pylab:
        ieee_spines_zoom3(pylab)

        for i, resources in enumerate(rs):
            v = P.Us(resources)
            color = colors[i]
            plot_upset_R2(pylab, v, axis, extra_space_shadow=0,
                      color_shadow=color, markers=markers,
                      marker_params=dict(markerfacecolor=color))
        
        pylab.ylabel('total mass [kg]')
        pylab.xlabel('total cost [USD]')
        pylab.xticks([110, 120, 130, 140, 150])
#         pylab.yticks([0.2, 0.25, 0.3, 0.35])
        set_axis_colors(pylab, color_resources, color_resources)
        pylab.axis(axis)

    rs_subset = rs[:3]
    with f.plot('resources3', **fig2) as pylab:
        ieee_spines_zoom3(pylab)

        for i, resources in enumerate(rs_subset):
            v = P.Us(resources)
            color = colors[i]
            plot_upset_R2(pylab, v, axis2, extra_space_shadow=0,
                      color_shadow=color, markers=markers,
                      marker_params=dict(markerfacecolor=color))
        
        pylab.ylabel('total mass [kg]')
        pylab.xlabel('total cost [USD]')
        pylab.xticks([110, 110.5, 111,111.5,])
        set_axis_colors(pylab, color_resources, color_resources)

    return r
Esempio n. 7
0
def report_plane2(data):
    matplotlib_settings()
    cs = CommonStats(data)
    r = Report()

    what_to_plot_res = dict(total_mass="kg", total_cost="USD")
    what_to_plot_fun = dict(endurance="Wh", extra_payload="g")

    plot_all_directions(r,
                        queries=data['queries'],
                        results=data['results'],
                        what_to_plot_res=what_to_plot_res,
                        what_to_plot_fun=what_to_plot_fun)

    fig1 = dict(figsize=(3, 3))
    fig2 = dict(figsize=(4, 4))

    fnames = ('endurance', 'extra_payload')
    rnames = ('total_cost', 'total_mass')

    axis = (108, 145, 0.05, 0.8)
    axis2 = (105, 111.5, 0.05, 0.27)
    fs, rs = cs.iterate(fnames, rnames)

    colors = get_colors(len(fs))
    f = r.figure()

    with f.plot('resources1', **fig1) as pylab:
        ieee_spines_zoom3(pylab)

        for i, ((f1, f2), resources) in enumerate(zip(fs, rs)):
            color = colors[i]
            if resources:
                marker = 'k.'
            else:
                marker = 'x'
            pylab.plot(f1, f2, marker, markerfacecolor=color, clip_on=False)

        pylab.xlabel('endurance [min]')
        pylab.ylabel('extra_payload [g]')
        #         pylab.xticks([0, 30, 60, 90, 120])
        set_axis_colors(pylab, color_functions, color_functions)

    params0 = dict(color_shadow=[1.0, 0.8, 0.8],
                   markers='k.',
                   markers_params={})

    color_shadow = params0['color_shadow']
    markers = params0['markers']

    P = parse_poset('dimensionless x dimensionless')

    with f.plot('resources2', **fig2) as pylab:
        ieee_spines_zoom3(pylab)

        for i, resources in enumerate(rs):
            v = P.Us(resources)
            color = colors[i]
            plot_upset_R2(pylab,
                          v,
                          axis,
                          extra_space_shadow=0,
                          color_shadow=color,
                          markers=markers,
                          marker_params=dict(markerfacecolor=color))

        pylab.ylabel('total mass [kg]')
        pylab.xlabel('total cost [USD]')
        pylab.xticks([110, 120, 130, 140, 150])
        #         pylab.yticks([0.2, 0.25, 0.3, 0.35])
        set_axis_colors(pylab, color_resources, color_resources)
        pylab.axis(axis)

    rs_subset = rs[:3]
    with f.plot('resources3', **fig2) as pylab:
        ieee_spines_zoom3(pylab)

        for i, resources in enumerate(rs_subset):
            v = P.Us(resources)
            color = colors[i]
            plot_upset_R2(pylab,
                          v,
                          axis2,
                          extra_space_shadow=0,
                          color_shadow=color,
                          markers=markers,
                          marker_params=dict(markerfacecolor=color))

        pylab.ylabel('total mass [kg]')
        pylab.xlabel('total cost [USD]')
        pylab.xticks([
            110,
            110.5,
            111,
            111.5,
        ])
        set_axis_colors(pylab, color_resources, color_resources)

    return r