当前位置: 首页>>代码示例>>Python>>正文


Python Graph.subplot方法代码示例

本文整理汇总了Python中graphs.Graph.subplot方法的典型用法代码示例。如果您正苦于以下问题:Python Graph.subplot方法的具体用法?Python Graph.subplot怎么用?Python Graph.subplot使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在graphs.Graph的用法示例。


在下文中一共展示了Graph.subplot方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: drawStepByStep

# 需要导入模块: from graphs import Graph [as 别名]
# 或者: from graphs.Graph import subplot [as 别名]
    def drawStepByStep(cls, methods, nSteps, nmethods, pdf, stepByStep):
        fig = 1
        ncols = nSteps + 1  # steps + baseline
        nlines = nmethods
        for name, method in methods.iteritems():

            # draw baseline
            bl = stepByStep[name]["baseline"]
            for pair in method["pairs"]:
                val = zip(*bl[pair.getPair()])
                Graph.subplot(nlines, ncols, fig)
                Graph.errorbar(
                    val[0],
                    val[1],
                    yerr=val[2],
                    fmt=".",
                    color=Graph.getColor(pair.getPair()),
                    label="%s,%s" % pair.getPair(),
                )
                Graph.hold = True
                Graph.decorate(
                    g_xlabel="Time (s)", g_ylabel="RTT time", g_title="Measures for %s, baseline" % name, g_grid=True
                )
                Graph.legend(loc=2)
            dfig = 1
            k = sorted(stepByStep[name].keys())
            k.remove("baseline")
            for step in k:
                Graph.subplot(nlines, ncols, fig + dfig)
                for pair in method["pairs"]:
                    val = zip(*stepByStep[name][step][pair.getPair()])
                    Graph.errorbar(
                        val[0],
                        val[1],
                        yerr=val[2],
                        fmt=".",
                        color=Graph.getColor(pair.getPair()),
                        label="%s,%s" % pair.getPair(),
                    )
                    Graph.hold = True
                Graph.axhline(2 * step, color=Graph.getColor(step))
                Graph.decorate(
                    g_xlabel="Time (s)",
                    g_ylabel="RTT time",
                    g_title="Measures for %s, step 2x%sms" % (name, step),
                    g_grid=True,
                )
                Graph.legend(loc=2)
                dfig += 1
            fig += ncols
        fig = Graph.gcf()
        fig.set_size_inches(50, 25)
        pdf.savefig(bbox_inches="tight")  #'checks/delay.pdf', format = 'pdf', )
        Graph.close()
开发者ID:wicaksana,项目名称:mininet-NetProbes,代码行数:56,代码来源:check.py

示例2: drawBoxPlots

# 需要导入模块: from graphs import Graph [as 别名]
# 或者: from graphs.Graph import subplot [as 别名]
    def drawBoxPlots(cls, mboxes, methods, nmethods, pdf):
        bl = mboxes.pop("baseline")
        blm = mboxes.pop("baselineMeasures")
        mets = sorted(methods.keys())
        for outliers in ("^", ""):
            nstep = 1
            # compare methods to each other
            ncols = nmethods + 2
            Graph.clf()

            Graph.subplot(1, ncols, nstep)
            d = 1.0 / (2 * len(bl))
            # make sure we iterate with the same order over methods
            for pair, data in bl.iteritems():
                vals = [[], []]
                for me in mets:
                    vals[0].append(data[me][0])
                    vals[1].append(data[me][1])
                Graph.errorbar(
                    [d + i for i in range(1, len(mets) + 1)],
                    vals[0],
                    yerr=vals[1],
                    fmt=".",
                    color=Graph.getColor(pair),
                    label="%s,%s" % pair,
                )
                Graph.hold = True
                d += 1.0 / len(bl)
            for l in range(1, len(mets) + 1):
                Graph.axvspan(
                    l, l + 1, facecolor=Graph.getColor(mets[l - 1]), alpha=0.1, hold=True
                )  # , linestyle = '--')
            Graph.legend(loc=2)
            Graph.xticks(rotation=50)
            Graph.decorate(
                g_xtickslab=[""] + mets,
                g_xticks=[0.5 + i for i in range(0, len(methods) + 1)],
                g_grid=True,
                g_xlabel="Measurement method",
                g_ylabel="Measured delays with stddev (ms)",
                g_title="Baseline for all methods",
            )
            nstep += 1

            Graph.subplot(1, ncols, nstep)
            Graph.boxplot([blm[met] for met in mets], sym=outliers)
            Graph.xticks(rotation=50)
            Graph.decorate(
                g_xtickslab=mets,
                g_grid=True,
                g_xlabel="Measurement method",
                g_ylabel="Measured baseline (ms)",
                g_title="Measures for baseline",
            )
            nstep += 1
            for step in sorted(mboxes.keys()):
                m_datas = mboxes[step]
                Graph.subplot(1, ncols, nstep)
                Graph.xticks(rotation=50)
                Graph.boxplot([m_datas[met] for met in mets], sym=outliers)
                Graph.axhline(2 * step, color="r")
                Graph.decorate(
                    g_xtickslab=mets,
                    g_grid=True,
                    g_xlabel="Measurement method",
                    g_ylabel="Measured delays - baseline (ms)",
                    g_title="Measures for step 2x%sms" % step,
                )
                nstep += 1
            fig = Graph.gcf()
            fig.set_size_inches(28, 8)
            pdf.savefig(bbox_inches="tight")  #'checks/boxdelay.pdf', format = 'pdf', )
            Graph.close()
开发者ID:wicaksana,项目名称:mininet-NetProbes,代码行数:75,代码来源:check.py

示例3: drawMethodsSummary

# 需要导入模块: from graphs import Graph [as 别名]
# 或者: from graphs.Graph import subplot [as 别名]
    def drawMethodsSummary(cls, nmethods, madiffs, mavgs, mdevs, methods, mrdiffs, msteps, mts, pdf):

        line = 1
        ncols = 3
        nlines = nmethods
        nbins = 15
        # plot the data
        for name, method in methods.iteritems():
            ts = mts[name]
            devs = mdevs[name]
            avgs = mavgs[name]
            steps = msteps[name]
            rdiffs = mrdiffs[name]
            adiffs = madiffs[name]
            Graph.subplot(nlines, ncols, line)
            for pair in method["pairs"]:
                Graph.errorbar(
                    ts[pair.getPair()],
                    avgs[pair.getPair()],
                    yerr=devs[pair.getPair()],
                    fmt=".",
                    color=Graph.getColor(pair.getPair()),
                    label="%s,%s" % pair.getPair(),
                )
                Graph.hold = True
            for target, tsteps in steps.iteritems():
                Graph.step(tsteps[0], tsteps[1], "r", where="post", label=target, color=Graph.getColor(target))
                Graph.hold = True
            Graph.decorate(g_xlabel="Time (s)", g_ylabel="RTT time", g_title="Measures for %s" % name)
            Graph.legend(loc=2)
            Graph.subplot(nlines, ncols, line + 1)
            n, bins, patches = Graph.hist(
                rdiffs.values(),
                nbins,
                normed=1,
                label=["%s,%s" % x for x in rdiffs.keys()],
                g_xlabel="Logarithmic Relative error",
                g_title="Logarithmic Relative error for %s" % name,
            )
            Graph.legend(loc="upper left", bbox_to_anchor=(0.9, 1.0), ncol=1)
            # ax.set_xticklabels([lab.get_text() for lab in ax.get_xaxis().get_ticklabels()])
            Graph.subplot(nlines, ncols, line + 2)
            Graph.hist(
                adiffs.values(),
                nbins,
                label=["%s,%s" % x for x in adiffs.keys()],
                g_xlabel="Absolute error",
                g_title="Absolute error for %s" % name,
            )
            Graph.legend(loc="upper left", bbox_to_anchor=(0.9, 1.0), ncol=1)
            # plt.hist(diffs.values(), stacked = True)
            # plt.xticks(bins, ["2^%s" % i for i in bins])
            # plt.hold(True)
            # plt.plot(steps_time, steps_val, 'r,-')
            #         plt.axis([0, 60, 0, 2000])
            # ax = plt.gca()
            # ax.yaxis.grid(True, linestyle = '-', which = 'major', color = 'lightgrey',
            #                alpha = 0.5)
            Graph.draw()
            line += ncols
        fig = Graph.gcf()
        fig.set_size_inches(20, 25)
        pdf.savefig(bbox_inches="tight")  #'checks/delay.pdf', format = 'pdf', )
        Graph.close()
开发者ID:wicaksana,项目名称:mininet-NetProbes,代码行数:66,代码来源:check.py

示例4: makeResults

# 需要导入模块: from graphs import Graph [as 别名]
# 或者: from graphs.Graph import subplot [as 别名]
    def makeResults(cls, methods, checkName="bw", saveResults=True):
        """Make result to graphics
        :param methods : results to process
        :param checkName: name of the current check being processed
        :param saveResults : save results to json file ?"""
        if saveResults:
            try:
                fn = cls.saveResults(methods, checkName)
                info("Saved bandwidth results to file %s\n" % fn)
            except Exception as e:
                error("Could not save bandwidth results : %s\n" % e)

        import numpy as np
        from matplotlib.backends.backend_pdf import PdfPages

        try:
            for name, method in methods.iteritems():
                info("Result of measures for method %s:" % name)
                for pair in method["pairs"]:
                    info(pair.printAll())
                info("\n")
        except Exception as e:
            error("Could not print results %s\n" % e)

        nmethods = len(methods)
        gr = 1
        ncols = 3
        nlines = nmethods
        nbins = 15
        # dict(step : dict(method, data))
        # mboxes = {}
        try:
            fn = "checks/%s.pdf" % checkName
            pdf = PdfPages(fn)
            for name, method in methods.iteritems():
                avgs = {}
                ts = {}
                adiffs = {}
                rdiffs = {}
                steps = {"total": None}
                for target, tsteps in method["real_steps"].iteritems():
                    st = zip(*tsteps)
                    step_time = np.array((0,) + st[1])
                    step_values = np.array((0,) + st[0])
                    steps[target] = (step_time, step_values)
                    steps["total"] = (
                        (step_time, np.minimum(steps["total"][1], step_values))
                        if steps["total"] is not None
                        else (step_time, step_values)
                    )

                for pair in method["pairs"]:
                    avg = map(lambda measure: measure.bw / (1000 ** 2), pair.measures)
                    adiff = map(lambda measure: measure.bw / (1000 ** 2) - measure.step, pair.measures)
                    rdiff = map(
                        lambda measure: abs(measure.bw / (1000.0 ** 2) - measure.step) / float(measure.step),
                        pair.measures,
                    )
                    t = map(lambda measure: measure.timestamp, pair.measures)
                    avgs[pair.getPair()] = np.array(avg)
                    ts[pair.getPair()] = np.array(t)
                    adiffs[pair.getPair()] = np.array(adiff)
                    rdiffs[pair.getPair()] = np.array(rdiff)

                # plot the data
                Graph.subplot(nlines, ncols, gr)
                for pair in method["pairs"]:
                    Graph.scatter(
                        ts[pair.getPair()],
                        avgs[pair.getPair()],
                        color=Graph.getColor(pair.getPair()),
                        label="%s,%s" % pair.getPair(),
                    )
                    Graph.hold = True
                for target, tsteps in steps.iteritems():
                    Graph.step(tsteps[0], tsteps[1], "r", where="post", label=target, color=Graph.getColor(target))
                    Graph.hold = True

                Graph.decorate(
                    g_xlabel="Time (s)",
                    g_ylabel="BW estimation with %s (Mbps)" % name,
                    g_title="Measure for Bandwidth for tool %s" % name,
                )
                ax = Graph.gca()
                ax.set_yscale("log")
                Graph.legend(loc=2)

                Graph.draw()
                Graph.subplot(nlines, ncols, gr + 1)
                Graph.hist(
                    rdiffs.values(),
                    nbins,
                    label=["%s,%s" % x for x in rdiffs.keys()],
                    g_xlabel="Relative error",
                    g_title="Relative error for tool %s" % name,
                )
                Graph.legend(loc=2)
                # ax = Graph.gca()
                # ax.set_yscale('log')

#.........这里部分代码省略.........
开发者ID:wicaksana,项目名称:mininet-NetProbes,代码行数:103,代码来源:check.py


注:本文中的graphs.Graph.subplot方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。