예제 #1
0
          onkeyup='my_search(0, "inp1", "myTable")',
          placeholder="Search for a genesymbol..")
    with table(id="myTable") as _table:
        _tr = tr()
        _tr.add([th(x) for x in header])
        for d in data:
            newd, gene = annotate(d, gene2annotation)
            with tr():
                td(
                    raw('<a href=%s target="_blank">%s</a>' % (os.path.join(
                        args.genes_dir, newd[0] + ".html"), newd[0])))
                td(newd[1])
                td(newd[2])
                td(
                    raw('<a href=%s target="_blank">link</a>' %
                        add_ucsc(gene, args.ucsc, chr_dict=chrom_dict)))
                for el in newd[3:]:
                    a = el.split(",")
                    if (len(a) == 1):
                        td(el)
                    else:
                        with td():
                            for aa in a:
                                p(aa)

    _script = script(raw(plain_script), type='text/javascript')

with open(os.path.join(args.outdir, args.name + ".html"), 'w') as f:
    #print(doc.render())
    f.write(doc.render())
예제 #2
0
          onkeyup='my_filter_greater(13, "inp4", "myTable")',
          placeholder="Filter top coverage content greater than..")
    input(type="number",
          id="inp5",
          onkeyup='my_filter_lesser_abs(9, "inp5", "myTable")',
          placeholder="Filter distance to TSS closer than..")
    with table(id="myTable") as _table:
        _tr = tr()
        _tr.add([
            th(x[1][0], onclick='sortTable(%d, %d)' % (x[0], x[1][1]))
            for x in enumerate(zip(header, dtypes))
        ])
        for peak in peaks:
            with tr():
                td(
                    raw('<a href=%s target="_blank">ucsc_link</a>' % add_ucsc(
                        peak, args.ucsc, flank=25, chr_dict=chr_dict)))
                for entry in flatten_peak(peak):
                    td(entry)

    _script = script(raw(plain_script), type='text/javascript')

with open(os.path.join(args.outdir, 'peaks.html'), 'w') as f:
    #print(doc.render())
    f.write(doc.render())

with open(os.path.join(args.outdir, 'peaks.tsv'), 'w') as f:
    f.write("%s\n" % "\t".join(header[1:]))
    for peak in peaks:
        f.write("%s\n" % "\t".join([str(x) for x in flatten_peak(peak)]))
예제 #3
0
              id="inp1",
              onkeyup='my_search(1, "inp1", "myTable")',
              placeholder="Search for a genesymbol..")
        with table(id="myTable") as _table:
            _tr = tr()
            _tr.add([th(x) for x in header])
            for d in data:
                newd, gene = annotate(d, gene2annotation)
                with tr():
                    td(
                        raw('<a href=%s target="_blank">%s</a>' %
                            (os.path.join(args.genes_dir,
                                          gene.name + ".html"), newd[0])))
                    td(
                        raw('<a href=%s target="_blank">link</a>' %
                            add_ucsc(gene, args.ucsc)))
                    for el in newd[1:]:
                        a = el.split(",")
                        if (len(a) == 1):
                            td(el)
                        else:
                            with td():
                                for aa in a:
                                    p(aa)

        _script = script(raw(plain_script), type='text/javascript')

    path = os.path.join(args.outdir, "cluster_%d" % cl)
    with open(path + ".html", 'w') as f:
        f.write(doc.render())
예제 #4
0
          onkeyup='my_filter_greater(13, "inp4", "myTable")',
          placeholder="Filter top coverage content greater than..")
    input(type="number",
          id="inp5",
          onkeyup='my_filter_lesser_abs(9, "inp5", "myTable")',
          placeholder="Filter distance to TSS closer than..")
    with table(id="myTable") as _table:
        _tr = tr()
        _tr.add([
            th(x[1][0], onclick='sortTable(%d, %d)' % (x[0], x[1][1]))
            for x in enumerate(zip(header, dtypes))
        ])
        for peak in peaks:
            with tr():
                td(
                    raw('<a href=%s target="_blank">ucsc_link</a>' %
                        add_ucsc(peak, args.ucsc, flank=25, chr_dict=chrdict)))
                for entry in flatten_peak(peak):
                    td(entry)

    _script = script(raw(plain_script), type='text/javascript')

with open(os.path.join(args.outdir, 'peaks.html'), 'w') as f:
    #print(doc.render())
    f.write(doc.render())

with open(os.path.join(args.outdir, 'peaks.tsv'), 'w') as f:
    f.write("%s\n" % "\t".join(header[1:]))
    for peak in peaks:
        f.write("%s\n" % "\t".join([str(x) for x in flatten_peak(peak)]))
예제 #5
0
파일: html_pam.py 프로젝트: afilipch/afp
    style(_style)


with doc:
    p(strong(_title))
    input(type="text", id="myInput", onkeyup="my_search(5)", placeholder="Search for a gene ...")
    #input(type="number", id="myInputGreater", onkeyup="my_filter_greater(6)", placeholder="Filter AT content greater than..")
    with table(id = "myTable") as _table:
        _tr = tr()
        _tr.add([ th(x[1][0], onclick='sortTable(%d, %d)' % (x[0], x[1][1])) for x in enumerate(zip(headers, dtypes))  ])
        for interval in peaks:
            center = int(interval.name)
            sense, antisense, tip = split_sequence(interval, genome, args.flank)
            #print(sense)
            with tr():
                td(raw('<a href=%s target="_blank">ucsc_link</a>' % add_ucsc(interval, args.ucsc)) )
                td(center-args.flank)
                td(center+args.flank)
                td(center)
                td(interval.strand)
                td(interval.attrs['gene'])
                td(interval.attrs['tss'])
                td(interval.score)
                td(interval.attrs['pam_min'])
                td(interval.attrs['pam_score'])
                #print(sense)
                with td(__pretty=False, style= 'font-family:monospace; font-size: 12pt'):
                    for seq, color in zip(sense, sense_colors):
                        span(seq, style="color:%s" % color)
                    for seq, color in zip(tip, tip_colors):
                        span(seq, style="color:%s" % color)
예제 #6
0
for gene in genes:
    ########### HTML SECTION ###########
    with open(os.path.join(args.outdir, "%s.html" % gene.name), 'w') as f:
        doc = dominate.document(title="%s: gene overview" % gene.name)
        with doc.head:
            style(_style)
        with doc:
            p(strong(gene.name))
            br()
            with p():
                b("Gene Symbol:")
                raw("\t%s" % gene.attrs['genesymbol'])
            with p():
                b("CDS:")
                raw('<a href=%s target="_blank">\t%s(%s) %d-%d</a>' %
                    (add_ucsc(gene, args.ucsc), gene.chrom, gene.strand,
                     gene.start, gene.stop))
                #raw("\t%s(%s) %d-%d " % (gene.chrom, gene.strand, gene.start, gene.stop))
            with p():
                b("Alternative TSS:")
                raw("\t%s" % gene.attrs["alt_tss"].replace(",", ", "))
            with p():
                b("Annotation:")
                raw("\t%s" % gene.attrs['annotation'])
            with p():
                b("Function:")
                raw("\t%s" % gene.attrs.get('function',
                                            gene.attrs.get('product', 'None')))
            with p():
                b("Phage:")
                raw("\t%s" % PHAGE[gene.attrs.get('phage')])