예제 #1
0
def generate_reports_for_paper(db_url='mysql://*****:*****@127.0.0.1/hutt', save_dir=os.environ['OBER'] + '/doc/paper_impute/supplementary'):
    '''Generate all variant reports (data file + bar charts) for imputation paper using
    the database whose connection is specified by the URL ''db_url''.''' 

    # Load data from file
    for group in ('region', 'coding'):
        variant_dao = VariantDao(db_url)
#        report = variant_dao.variant_count_report(group)
#        report.save(open('%s/variant-count-%s.dat' % (save_dir, group), 'wb'))
        report = VariantSummaryReport.load(open('%s/variant-count-%s.dat' % (save_dir, group), 'rb'))
        # Generate figure
        variant_summary_bar_chart(report)
        # Save figure to file
        for extension in ('png', 'eps'):
            plt.savefig('%s/variant-count-%s.%s' % (save_dir, group, extension))
예제 #2
0
    def _test_variant_count_report(self, group):
        '''Test variant summary counts queries, grouped by region.'''
        report = self.variant_dao.variant_count_report(group)
        output = StringIO.StringIO()
        report.save(output)
        str1 = output.getvalue()
        output.close()

        output = StringIO.StringIO()
        report.save(output)
        report2 = VariantSummaryReport.load(iter(output.getvalue().split('\n')[:-1]))
        output.close()
        output = StringIO.StringIO()
        report2.save(output)
        str2 = output.getvalue()
        assert_equal(str1, str2, 'Saving-loading-saving doesn\'t give the same serialization as saving')
예제 #3
0
def generate_reports_for_paper(db_url='mysql://*****:*****@127.0.0.1/hutt',
                               save_dir=os.environ['OBER'] +
                               '/doc/paper_impute/supplementary'):
    '''Generate all variant reports (data file + bar charts) for imputation paper using
    the database whose connection is specified by the URL ''db_url''.'''

    # Load data from file
    for group in ('region', 'coding'):
        variant_dao = VariantDao(db_url)
        #        report = variant_dao.variant_count_report(group)
        #        report.save(open('%s/variant-count-%s.dat' % (save_dir, group), 'wb'))
        report = VariantSummaryReport.load(
            open('%s/variant-count-%s.dat' % (save_dir, group), 'rb'))
        # Generate figure
        variant_summary_bar_chart(report)
        # Save figure to file
        for extension in ('png', 'eps'):
            plt.savefig('%s/variant-count-%s.%s' %
                        (save_dir, group, extension))
예제 #4
0
    def _test_variant_count_report(self, group):
        '''Test variant summary counts queries, grouped by region.'''
        report = self.variant_dao.variant_count_report(group)
        output = StringIO.StringIO()
        report.save(output)
        str1 = output.getvalue()
        output.close()

        output = StringIO.StringIO()
        report.save(output)
        report2 = VariantSummaryReport.load(
            iter(output.getvalue().split('\n')[:-1]))
        output.close()
        output = StringIO.StringIO()
        report2.save(output)
        str2 = output.getvalue()
        assert_equal(
            str1, str2,
            'Saving-loading-saving doesn\'t give the same serialization as saving'
        )