> Modules non standards > Biopython > DNA feature viewer
DNA feature viewer
C'est une librairie pour tracer des cartes de features sur l'ADN, en se servant de matplotlib.
Utilisation :
from dna_features_viewer import GraphicFeature, GraphicRecord
features = [GraphicFeature(start = 1, end = 10, strand = 1, color = 'red', label = 'myFeature1'),
GraphicFeature(start = 20, end = 30, strand = -1, color = 'blue', label = 'myFeature2')]
record = GraphicRecord(sequence_length = 30, features = features, plots_indexing = 'genbank')
ax, _ = record.plot()
pyplot.savefig('myImage.png')
pyplot.close()
- attention, utiliser plots_indexing = 'genbank' pour avoir des positions qui commencent à 1, et end est la position + 1
Paramètres de GraphicFeature :
- on peut faire strand = 0 pour ne pas orienter la feature.
- thickness = 20 : l'épaisseur de la boite de la feature.
- linewidth = 4 : l'épaisseur des traits de la boite de la feature.
- linecolor = 'violet' : la couleur des traits de la boite de la feature.
- box_color = 'yellow' : la couleur de fond de la boite contenant le label quand il ne tient pas dans la feature.
- box_linewidth = 2 : l'épaisseur du trait de la boite contenant le label quand il ne tient pas dans la feature.
- fontdict = {'fontsize': 15, 'weight': 'bold', color = 'green'} : permet de modifier les caractéristiques du label
Paramètres de GraphicRecord :
- sequence_length = 30 : la longueur de la séquence.
- first_index = 123456 : la première valeur de position à tracer (utile si les features sont localisées sur une petite région d'une grande séquence).
- plots_indexing = 'genbank' : commence la numérotation à 1 plutôt qu'à 0 avec le défaut plots_indexing = 'biopython'
- feature_level_height = 2 : règle l'écartement en hauteur entre les features et entre les labels
- ticks_resolution = 10 : tous les combien il faut indiquer les graduations de positions.
- sequence = 'ACGATCGACGTATGATGCTAGGATGATTAC' : la séquence (si on veut l'afficher, voir plot ci-dessous).
- feature_level_height = 1.5 : permet d'augmenter la hauteur des features (1 par défaut).
record.plot :
- ax = myAxis : pour donner le axis sur lequel le graphe est tracé (sinon, un nouvel axis est crée et c'est le premier argument renvoyé par record.plot : myAxis, _ = record.plot().
- figure_width = 8 : la largeur de la figure, si nouvellement crée.
- figure_height = 4 : la hauteur de la figure, si nouvellement crée.
- plot_sequence = True : indique la séquence en-dessous.
record.plot_on_multiple_lines(n_lines = 2, ...) : permet de tracer les features sur plusieurs lignes.
record.plot_translation(ax, location = (1, 9), translation = 'TID') : permet de faire figure la traduction en-dessous de la séquence.
On peut aussi utiliser CircularGraphicRecord à la place de GraphicRecord pour faire des cartes circulaires, mais toutes les options ne sont possibles (par exemple, pas de séquence).
Copyright python-simple.com
programmer en python, tutoriel python, graphes en python, Aymeric Duclert