benediktrauscher/drawrnajs

Visualising non-canonical RNA basepairs

Closed this issue · 9 comments

Great work on the RNA 2D visualisation! Here is a feature request: it would be good to add an option for visualising non-canonical RNA basepairs using the Leontis-Westhof nomenclature.

This functionality exists in Varna, although Varna requires Java.

Non-canonical basepairs can be used for visualising RNA 3D motifs like this sarcin-ricin internal loop:
il_85647 7

Hi Anton,

thank you very much for your suggestion, I will definitely look into this!

Great, thanks a lot Ben!

Hi Anton,

this is now implemented. Basically you can click on a non-canonical bond now and set the bond edges.
I'm sorry this took so long! Any feedback is much appreciated.

👍

That's great, thanks a lot! Non-Watson Crick pairs are essential for understanding RNA structure.

Would you mind providing an example of how to use this feature, perhaps by visualising the structure in the image above?

I visualised the image above:

screenshot 2015-08-27 15 28 06

I added the example of how to achieve this to the component's example section in the BioJS registry.

The example above is a bit tricky as it cannot be encoded by dot-bracket notation with simple round brackets (or can it?). That's why everything has to be set programmatically. How can the visualisation be achieved using VARNA? Any suggestions on how this could be made more convenient?

This is very cool, thanks Ben!

In Varna one can encode non-WC basepairs like this:

<param name="sequenceDBN1"  value="GAGGGGGGGGGGGGGGGGGGGGGUUC" />
<param name="structureDBN1" value="(((....................)))" />
<param name="auxBPs1" value="(4,23):edge5=wc,edge3=h,stericity=trans;
        (5,22):edge5=s,edge3=h,stericity=cis;
        (6,21):edge5=s,edge3=s,stericity=trans;
        (7,20):edge5=h,edge3=h,stericity=cis;
        (8,19):edge5=wc,edge3=wc,stericity=trans;
        (9,18):edge5=h,edge3=wc,stericity=cis" />

Example in Varna docs.

So one could pass an optional array of objects to describe non-canonical edges during initialisation.

On a related note, it is common to describe non-WC basepairs like this: cWW, tHS, cSS etc (cis/trans + edge1 + edge2). There are two subtypes of cSS basepairs depending on how the bases come together in 3D, if I remember correctly: cSs and cSs (so case matters).

It's exciting to see this coming together so nicely. I think I might integrate this visualisation in RNA 3D Motif Atlas soon.

Maybe it's worth looking into the RNAML format (http://www.ncbi.nlm.nih.gov/pubmed/12088144) ? The abstract of the RNAML paper says: This RNAML syntax allows for the storage and the exchange of information about RNA sequence and secondary and tertiary structures.

RNAML could be an option but I am not sure how many people use it these days...