¿Tienes un ensamble de genoma bacteriano y te gustaría representarlo como un genoma circular? Yo he utilizado DNAplotter, una herramienta java (multiplataforma) del Instituto Sanger bastante versátil y potente.
I. Pasos previos alternativos: Si el genoma está fragmentado recomiendo ordenarlo por sesgo de GC y por tamaño de los scaffolds siguiendo el siguiente pipeline:
En las siguientes líneas usaré un genoma descargado desde NCBI en el Bioproject PRJNA514341, ensamble GCA_013277805.1.
Archivo fasta: GCF_013277805.1_ASM1327780v1_genomic.fna
Archivo gff: .GCF_013277805.1_ASM1327780v1_genomic.gff
1. Ordenar scaffolds por tamaño en orden descendiente
sizeseq -sequences GCF_013277805.1_ASM1327780v1_genomic.fna -outseq GCF_013277805.1_ASM1327780v1_genomic.sorted1.fna -descending
2. Obtener los IDs de los scaffolds ordenados por GC_skew
gc_skew_sort.pl GCF_013277805.1_ASM1327780v1_genomic.sorted1.fna | sed 's/ .*//' > GCF_013277805.1_ASM1327780v1_genomic.sorted1.ids
3. Ordenar scaffolds ya ordenados por tamaño, esta vez por GC_skew
fastasort.pl GCF_013277805.1_ASM1327780v1_genomic.sorted1.fna GCF_013277805.1_ASM1327780v1_genomic.sorted1.ids > GCF_013277805.1_ASM1327780v1_genomic.sorted2.fna
II. Pipeline DNAPlotter (se puede instalar con Anaconda)
File -> open -> abrir archivo fasta del genoma ".fna o .fasta"
(en mi caso usaré el archivo procesado GCF_013277805.1_ASM1327780v1_genomic.sorted2.fna)
option -> track manager
-> 1rst track to "fasta_record" key -> apply
-> delete other tracks
File -> read in entry on separate track -> abrir archivo ".gff"
(en mi ejemplo: GCF_013277805.1_ASM1327780v1_genomic.gff)
track manager -> tack2 -> "gene" key, strand "forward", position "0.9", colour "blue" -> apply
La palabra llave o "key" del track se debe escojer según la información que contiene el GFF. Los genes puedes estar clasificados con diferentes llaves lo cual permite ordenar la información. Por ejemplo las palabras llaves pueden ser gene, CDS, tRNA, rRNA y muchas otras. Usando las palabras adecuadas se pueden graficar círculos con genes pertenecientes a distintas categorías. Recomiendo revisar el GFF en un editor de texto para ver todas las claves posibles (tercera columna).
Si usaste "Prodigal" para la predicción de genes entonces tu GFF sólo tendrá la llave CDS. Lo mismo ocurre con cualquier otro predictor de genes sólo que la llave puede ser distinta. Las llaves mas específicas provienen de un proceso de anotación funcional de los genes predichos lo cual es otra historia.
File -> read in entry on separate track -> .gff
(en mi ejemplo: GCF_013277805.1_ASM1327780v1_genomic.gff)
track manager -> tack2 -> "gene" key, strand "reverse", position "0.85", colour "red" -> apply
Graph -> GC plot -> Draw
Graph -> GC plot -> Options -> Height 0.3, Track 0.5, Below "1rst gray" Above "3th gray".
Graph -> GC Skew -> Graph
Graph -> GC Skew -> Options -> Height 0.3, Track 0.2
Options -> Tick marks -> Interval "500000", Minor "250000"
III. Extra: Instalación de Prodigal y DNAPlotter
Crear ambiente Anaconda con DNAPlotter y también con Prodigal
conda create -n dnaplotter -c bioconda -c conda-forge artemis prodigal
conda activate dnaplotter
# conda deactivate dnaplotter
Obtener predicción de genes desde el genoma y obtener el resultado en distintos formatos.
# Salida a GFF
prodigal -i genoma.sorted2.fa -o genoma.sorted2.gff -d genoma.sorted2.fna -a genoma.sorted2.faa -f gff
# Salida a GBK
prodigal -i genoma.sorted2.fa -o genoma.sorted2.gbk -d genoma.sorted2.fna -a genoma.sorted2.faa -f gbk
Ejecutar DNAPlotter
dnaplotter
Excellent article! We are linking to this particularly great article on our website. Keep up the good writing. Maryrose Antoni Gelasius
I want to say thanks so much to acknowledge your caring about the value of your content, and thus your readers. Nolan Escue
Hello there! I simply want to offer you a big thumbs up for your excellent info you have got here on this post. Olen Tidmore
Everything is very open with a very clear explanation of the challenges. It was truly informative. Your site is very useful. Thank you for sharing. Salvador Paa
Very interesting subject , thankyou for posting. Lindsay Courtois
Wonderful post! We will be linking to this great content on our site. Keep up the good writing. Jacob Sonneborn
I always was concerned in this subject and stock still am, thank you for putting up. Jason Schwendeman
There is visibly a bunch to realize about this. I suppose you made certain good points in features also. Leonard Grey
I blog quite often and I really appreciate your content. This great article has trly peaked my interest. Keven Pokorney
You are my inspiration , I have few web logs and occasionally run out from to post . Ollie Nevares
I really enjoy the blog post. Thanks Again. Keep writing. Darell Fleagle