Source code for ppanggolin.figures.drawing

#!/usr/bin/env python3
#coding:utf-8

#default libraries
import argparse
import time
import os

#local libraries
from ppanggolin.utils import mkOutdir
from ppanggolin.pangenome import Pangenome
from ppanggolin.figures import drawTilePlot, drawUCurve

[docs]def launch(args): mkOutdir(args.output, args.force) pangenome = Pangenome() pangenome.addFile(args.pangenome) if args.tile_plot: drawTilePlot(pangenome, args.output, args.nocloud) if args.ucurve: drawUCurve(pangenome, args.output, soft_core = args.soft_core)
[docs]def figureSubparser(subparser): parser = subparser.add_parser("draw", formatter_class=argparse.ArgumentDefaultsHelpFormatter) required = parser.add_argument_group(title = "Required arguments", description = "One of the following arguments is required :") required.add_argument('-p','--pangenome', required=True, type=str, help="The pangenome .h5 file") optional = parser.add_argument_group(title = "Optional arguments") optional.add_argument('-o','--output', required=False, type=str, default="ppanggolin_output"+time.strftime("_DATE%Y-%m-%d_HOUR%H.%M.%S", time.localtime())+"_PID"+str(os.getpid()), help="Output directory") optional.add_argument("--tile_plot",required = False, default = False, action = "store_true",help = "draw the tile plot of the pangenome") optional.add_argument("--nocloud", required=False, default = False, action = "store_true", help = "Do not draw the cloud in the tile plot") optional.add_argument("--soft_core",required=False, default = 0.95, help = "Soft core threshold to use") optional.add_argument("--ucurve",required = False, default = False, action = "store_true",help = "draw the U-curve of the pangenome") return parser