示例#1
0
    def testStatisticDaily (self):
        fname = u"examples/example_1_small.log"
        parser = LogParser (loadFile (fname))

        stat = Statistic (parser.commits)
        statlist = stat.getStat (Daily)

        self.assertEqual (len (statlist), 6)
        self.assertEqual (statlist[0][0], datetime.datetime (2012, 11, 24))
        self.assertEqual (statlist[0][1], 6)

        self.assertEqual (statlist[-1][0], datetime.datetime (2012, 12, 14))
        self.assertEqual (statlist[-1][1], 1)
示例#2
0
    if len(sys.argv) < 2:
        print "Using: python plotstat.py logfile.txt"
        exit(1)

    fname = sys.argv[-1]

    try:
        with open(fname) as fp:
            logstr = fp.read()
    except IOError, e:
        print "Can't open {0}".format(fname)
        exit(1)

    parser = LogParser(logstr)
    stat = Statistic(parser.commits)
    dateList = stat.getStat(Daily10)

    dates, count = zip(*dateList)

    # Преобразуем даты в числовой формат
    dates_float = [matplotlib.dates.date2num(date) for date in dates]

    # Вызовем subplot явно, чтобы получить экземпляр класса AxesSubplot,
    # из которого будем иметь доступ к осям
    axes = pylab.subplot(1, 1, 1)

    # Пусть в качестве меток по оси X выводится только год
    axes.xaxis.set_major_formatter(matplotlib.dates.DateFormatter("%Y.%m"))

    # Отобразим данные
    pylab.bar(dates_float, count, width=10)
示例#3
0
    def testStatisticEmpty (self):
        stat = Statistic ([])
        statlist = stat.getStat (Daily)

        self.assertEqual (len (statlist), 0)