Plasmidviewer

Plasmidviewer is a Python library to visualize plasmid maps from GenBank.
This library provides only the function to visualize circular plasmids and doesn’t provide functions to edit nucleotides and sequence features.
If you want to do such operations, please use QUEEN, which I have recently developed.
(In fact, this library is implemented based on the visualization function of QUEEN)

Installation

You can install this library using the following single command:
pip install git+https://github.com/ponnhide/plasmidviewer.git

Example code

    import plasmidviewer as pv
    from Bio import SeqIO
    record = SeqIO.read("../example_data/addgene-plasmid-63592-sequence-334654.gbk", format="genbank") 
    feats  = []
    facecolors  = []
    edgecolors  = []
    labelcolors = [] 
    for feat in record.features:
        if feat.type == "source" or feat.type == "primer_bind":
            pass 
        else:
            feats.append(feat)  
            if feat.type == "CDS" and feat.strand >= 0:
                facecolors.append("#FFDFDF")
                edgecolors.append("#EE0000") 
                labelcolors.append("#DD0000") 

            elif feat.type == "CDS" and feat.strand == -1:
                facecolors.append("#DFDFFF")
                edgecolors.append("#0000EE") 
                labelcolors.append("#0000DD") 
            else:
                edgecolors.append(None)
                labelcolors.append(None)
                facecolors.append(None)

    fig, ax = pv.visualize(record, feature_list=feats, title="lentiCas9-EGFP")
    fig.savefig("test1.pdf")
    
    fig, ax = pv.visualize(record, feature_list=feats, edgecolor=edgecolors, title="lentiCas9-EGFP")
    fig.savefig("test2.pdf") 
    
    fig, ax = pv.visualize(record, feature_list=feats, facecolor=facecolors, edgecolor=edgecolors, labelcolor=labelcolors, title="lentiCas9-EGFP", inner_diameter=500, tick_interval=1000)
    fig.savefig("test3.pdf") 

Example images

GitHub

View Github