Mercurial > ift6266
comparison scripts/stat_graph.py @ 450:c1df23c98eb6
New script to create histograms for datasets (for the report)
author | Arnaud Bergeron <abergeron@gmail.com> |
---|---|
date | Mon, 10 May 2010 11:41:02 -0400 |
parents | |
children | 227ebc0be7ae |
comparison
equal
deleted
inserted
replaced
449:7bdd412754ea | 450:c1df23c98eb6 |
---|---|
1 import matplotlib | |
2 matplotlib.use('Agg') | |
3 | |
4 from pylab import * | |
5 from scipy import stats | |
6 import numpy | |
7 from ift6266 import datasets | |
8 | |
9 nistp_valid = stats.itemfreq(datasets.PNIST07().valid(10000000).next()[1]) | |
10 nist_valid = stats.itemfreq(datasets.nist_all().valid(10000000).next()[1]) | |
11 nist_test = stats.itemfreq(datasets.nist_all().test(10000000).next()[1]) | |
12 print 'nistp_valid', sum(nistp_valid[:,1]) | |
13 print 'nist_valid', sum(nist_valid[:,1]) | |
14 print 'nist_test', sum(nist_test[:,1]) | |
15 | |
16 xloc = numpy.arange(62)+0.5 | |
17 | |
18 labels = map(str, range(10)) + map(chr, range(65,91)) + map(chr, range(97,123)) | |
19 | |
20 def makegraph(data, fname, labels=labels, xloc=xloc, width=0.5): | |
21 figure(figsize=(8,6)) | |
22 # clf() | |
23 bar(xloc, data, width=width) | |
24 xticks([]) | |
25 for x, l in zip(xloc, labels): | |
26 text(x+width/2, -250, l, horizontalalignment='center', verticalalignment='baseline') | |
27 # xticks(xloc+width/2, labels, verticalalignment='bottom') | |
28 xlim(0, xloc[-1]+width*2) | |
29 ylim(0, 7000) | |
30 | |
31 savefig(fname) | |
32 | |
33 | |
34 makegraph(nistp_valid[:,1], 'nistpvalidstats.png') | |
35 makegraph(nist_valid[:,1], 'nistvalidstats.png') | |
36 makegraph(nist_test[:,1], 'nistteststats.png') |