Esempio n. 1
0
        mapping_df.to_csv(mapping_out, sep='\t')


    # FEEDBACK
    print("All your files have been written to the directory", output_dir)
    print("Simply open the file index.html in a browser that has")
    print("an internet connection to view the interactive phylogram.")



plugin = Plugin(
    name='phylogram',
    version=__version__,
    website='https://github.com/ConstantinoSchillebeeckx/q2-phylogram',
    package='q2_phylogram'
)

plugin.visualizers.register_function(
    function=make_d3_phylogram,
    inputs={'tree': Phylogeny},
    parameters={'otu_metadata': qiime.plugin.Metadata},
    name='Visualize phylogram',
    description='Generate interactive visualization of your phylogenetic tree.'
)

def tree_to_biopython_tree(data_dir):
    with open(os.path.join(data_dir, 'tree.nwk'), 'r') as fh:
        return Bio.Phylo.read(fh, 'newick')

plugin.register_data_layout_reader('tree', 1, Bio.Phylo.Newick.Tree, tree_to_biopython_tree)
Esempio n. 2
0
ROM_data_layout.register_file('game.gba', GBAFormat)
plugin.register_type_to_data_layout(Game[GBA], 'rom', 1)


def ROM_data_layout_to_buffered_reader(data_dir):
    return open(os.path.join(data_dir, 'game.gba'), 'rb')


def buffered_reader_to_ROM_data_layout(view, data_dir):
    with open(os.path.join(data_dir, 'game.gba'), 'wb') as fh:
        fh.write(view.read())


plugin.register_data_layout(ROM_data_layout)

plugin.register_data_layout_reader('rom', 1, io.BufferedReader,
                                   ROM_data_layout_to_buffered_reader)

plugin.register_data_layout_writer('rom', 1, io.BufferedReader,
                                   buffered_reader_to_ROM_data_layout)


def play(output_dir : str, rom : io.BufferedReader) -> None:
    with open(os.path.join(output_dir, 'gameloader.js'), 'wb') as fh:
        fh.write(b"onDataLoad('" + base64.b64encode(rom.read()) + b"');")

    copytree(os.path.join(os.path.dirname(__file__), 'assets'),
             os.path.join(output_dir))


# From http://stackoverflow.com/a/12514470/579416
def copytree(src, dst, symlinks=False, ignore=None):
Esempio n. 3
0
        os.makedirs(dat_dir)
    with open(os.path.join(output_dir,'index.html'), 'w') as fout:
        fout.write(index)
    tree_out = os.path.join(dat_dir,'tree.tre')
    with open(tree_out, 'w') as fout:
        fout.write("d3.jsonp.readNewick('%s');" %str(tree).strip()) # add callback around Newick string for use in cross-origin setting




plugin = Plugin(
    name='phylogram',
    version=__version__,
    website='https://github.com/ConstantinoSchillebeeckx/q2-phylogram',
    package='q2_phylogram'
)

plugin.visualizers.register_function(
    function=make_d3_phylogram,
    inputs={'tree': Phylogeny},
    parameters={'otu_metadata': qiime.plugin.Metadata},
    name='Visualize phylogram',
    description='Generate interactive visualization of your phylogenetic tree.'
)

def tree_to_skbio_tree(data_dir):
    with open(os.path.join(data_dir, 'tree.nwk'), 'r') as fh:
        return read(fh, format="newick", into=TreeNode)

plugin.register_data_layout_reader('tree', 1, skbio.TreeNode, tree_to_skbio_tree)