Skip to content

Instantly share code, notes, and snippets.

View fjossinet's full-sized avatar
✏️
Drawing an RNA

Fabrice Jossinet fjossinet

✏️
Drawing an RNA
View GitHub Profile
@fjossinet
fjossinet / rnartist.kts
Created January 2, 2022 14:35
RNA 2D loaded from a local file and now described entirely in the script. Anybody can load it without the original file.
import io.github.fjossinet.rnartist.core.*
rnartist {
ss {
rna {
seq = "gaggaaaguccgggcUAGCACACACCUUAUGGGUGUGUAGUGUUUGUGCUAAGGGAAAUCAUAACCUUAGGUAUGUUGUAUAAACAUAACGGCAAACUAGUUAUAGCUAAGGUGUUUCACUACGUUAUAACUUAAAUUAAAGUGCCACAGAGACGAAUCUAUUUAGAAAUAAAUAGAGUGAAACGCGGUAAACCCCUCAAGCUAGCAACCCAAAUUAGGUAGGGGCACAUGAUGUGUAGCAAUACAACAUCAUGCAAGAUUUGAAUCUUGAGAUUAAUAGUCACAAAAGAAGAAAUUCUUUacagaacgcggcuua"
name = "A"
}
helix {
name = "H1"
@fjossinet
fjossinet / rnartist.kts
Created January 1, 2022 13:06
Happy 2022!
import io.github.fjossinet.rnartist.core.*
rnartist {
ss {
bn {
value = "(((((.((((.(((((.((((....)))).))))).)))).)))))...................(((((((((((.(((((.((((((((..)))))))).))))).)))))))))))......(((((.((((.(((((.((((....)))).))))).)))).)))))...........(((((.((((.(((((.((((....)))).))))).)))).)))))........"
}
}
theme {
details {
@fjossinet
fjossinet / rnartist.kts
Created December 30, 2021 10:03
Numbering is now exported in SVG output. Example with RNaseP RNA from Acholeplasma laidlawii.
import io.github.fjossinet.rnartist.core.*
rnartist {
ss {
ct {
file = "C:/Users/fjoss/Downloads/test/ASE_00010_from_RNA_STRAND_database.ct"
}
}
theme {
details {
@fjossinet
fjossinet / rnartist.kts
Created December 27, 2021 19:47
I have a little bit more than 750 followers on twitter. Thanx!
import io.github.fjossinet.rnartist.core.*
rnartist {
ss {
bn {
value = "((...((((((((.((((...)))).((((((((....((((((((((..))))))))))..)))))))).((...))..))))))))....))................((...(((((....(((((((.....(((((.....(((((((.....(((((.......))))).....))))))).....))))).....)))))))...)))))....))...........................(((((((((((((((((((((....(((((((..(((((((((((((((((...(((.......)))...)))))))))))))))))...))))))).....)))))))))))))))))))))"
}
}
theme {
details {
@fjossinet
fjossinet / rnartist.kts
Created December 27, 2021 16:57
Quite elaborate plot for snRNA SNORA75 (RF00072) in Salmo gairdneri (AJ009730.1)
import io.github.fjossinet.rnartist.core.*
rnartist {
ss {
rfam {
id = "RF00072"
name = "AJ009730.1/1-133"
}
}
theme {
@fjossinet
fjossinet / rnartist.kts
Created December 27, 2021 15:47
Each gist provides now the RNArtist script and an SVG output. You can use the SVG in your favorite vector graphics editor.
import io.github.fjossinet.rnartist.core.*
rnartist {
ss {
bn {
value = "(((..(((....))).)))...(((..(((..(((..(((....))).)))...(((..(((....))).)))...((((((..(((....))).)))..(((....))).)))(((..(((....))).)))..))).)))...((((((..(((....))).)))..(((....))).)))(((..(((....))).)))"
}
}
theme {
details {
@fjossinet
fjossinet / rnartist.kts
Created December 27, 2021 10:26
This plot shows how to use the new element named details. It allows to quickly shape helices, single-strands and junctions.
import io.github.fjossinet.rnartist.core.*
rnartist {
ss {
bn {
value = "(((..(((....))).)))...(((..(((....))).)))...((((((..(((....))).)))..(((....))).)))(((..(((....))).)))"
}
}
theme {
details {
@fjossinet
fjossinet / rnartist.kts
Last active December 24, 2021 17:08
Example of an RNA linked to quantitative values. The plot displays two color gradients (one for R and one for Y) with a cutoff for R (the gradient is defined for all values above 50.0)
import io.github.fjossinet.rnartist.core.*
rnartist {
ss {
bn {
seq = "GCGAAAAAUCGC"
value = "((((....))))"
}
}
data {
import io.github.fjossinet.rnartist.core.*
rnartist {
ss {
bn {
seq = "UCUUUCGUUUAUCAGGUCCGUCGCUGGGCUUUCCGUAAGAUUCUCACGUCGAAUGGUGUUCGGAGACUGAACUUUUUUAGCUUUAUGAGGGGGGUUACAGACUUCCGUCUGCUACGUGCGGGGGAACCGUACCACUGUCGGAUGUGGUCCCUUGCGCUCAAGGUGCUGCGACGCGCAGGUGCGUGAUCCAGAUAGGCAACACCCAUAUCAAUGCUAUCUGGAGGUAGUAUUGAUAGCCGUGGCUGGCUAUGUGUUUUGUGCUGAUAACCAUCAGACGGUGCCGGU"
value = "(((..(((..(((..(((((....))))).(((..(((..(((..(((((....)))))..)))..(((((....)))))..)))...))).)))..(((((....)))))..)))...)))...(((..(((.(((..(((..(((..(((((....)))))..)))..(((((....)))))..)))...)))...(((..(((..(((..(((((....)))))..)))..(((((....)))))..)))...))).(((((....)))))..)))...)))"
}
}
theme {
import io.github.fjossinet.rnartist.core.*
rnartist {
ss {
bn {
seq = "UCUUUCGUUUAUCAGGUCCGUCGCUGGGCUUUCCGUAAGAUUCUCACGUCGAAUGGUGUUCGGAGACUGAACUUUUUUAGCUUUAUGAGGGGGGUUACAGACUUCCGUCUGCUACGUGCGGGGGAACCGUACCACUGUCGGAUGUGGUCCCUUGCGCUCAAGGUGCUGCGACGCGCAGGUGCGUGAUCCAGAUAGGCAACACCCAUAUCAAUGCUAUCUGGAGGUAGUAUUGAUAGCCGUGGCUGGCUAUGUGUUUUGUGCUGAUAACCAUCAGACGGUGCCGGU"
value = "(((..(((..(((..(((((....))))).(((..(((..(((..(((((....)))))..)))..(((((....)))))..)))...))).)))..(((((....)))))..)))...)))...(((..(((.(((..(((..(((..(((((....)))))..)))..(((((....)))))..)))...)))...(((..(((..(((..(((((....)))))..)))..(((((....)))))..)))...))).(((((....)))))..)))...)))"
}
}
theme {