wilzbach / msa Goto Github PK
View Code? Open in Web Editor NEWModular BioJS compoment for a multiple sequence alignment
Home Page: http://msa.biojs.net
License: Boost Software License 1.0
Modular BioJS compoment for a multiple sequence alignment
Home Page: http://msa.biojs.net
License: Boost Software License 1.0
The end user would be able to see a graphical display of computed secondary structure (helices, beta strands, coils) for the reference sequence graphically above the MSA block. (or in a location parallel to the sequence logo)
an amino acid that is selected through highlighting of a column and a row must be surrounded by a red square.
The end user would be able to see a graphical display of computed pairwise interactions between residue columns (perhaps visualized as spanning lines connecting related columns)
If RegEx doesn't find a match in the alignment then the user must be notified about it. If it does find a match then the corresponding regions must be highlighted in the small overview box as well.
Suzi: I am imagining two scenarios, in the first if the user has done a motif search (or the domains have been previously located) then they would want to move along the proteins from domain to domain to look at the alignment for each to see if key residues have changed. Rather like using the database of conserved domains but easier (http://www.ncbi.nlm.nih.gov/Structure/cdd/cddsrv.cgi?uid=257100 as an example). The other scenario is the pure location one as you say.
overview: transparency (multiple selections overlap them and result in a lower transparency)
draw a colored box around amino acids that have an annotation (catalytic sites, domains, etc.)
what if the width does not allow birds eye view to fit on one screen? synchronized scrolling?
I selected several regions, programatically, but I would like to disable the onClick event, so if the user accidentally clicks on the component they don't loose the selection.
The containing website can configure the calculation of residue code stacking height in the sequence logo diagram. Stack height could be determined according to entropy score, or by non-gap residue prevalence (and perhaps other options)
for large alignments show only the overview, if interested in a particular region then click on the overview and the region will be shown in the main alignment window
I would like to be able to initialise a position from where to show the MSA, but still be able to scroll backwards (something like
var msa = new biojs.vis.msa.msa({el: div_obj, seqs: seqs, start_pos=50})
have the main alignment window of a fixed length/width and the small overview below
In the current example: http://sniper.biojs-msa.org:9090/snippets/msa_show_menu colums selection and inversion of selection is buggy.
Selecting columns e.g. 11-15 and inverting the selection marks columns 1-13 and 16-end of the sequence.
an aligned residue column which represented a point of mutation might be indicated with an outline on the right and left margin of the residue codes in that column. The containing website would be able to choose the display styles wanted, and could delegate that choice to the end user.
support partition codes after which seqs could be sorted
Functionality for the shading or coloring of MSA members, or of aligned column positions should offer a number of distinguishable and compatible styles
The style in which such marking would occur (outlining v. background shading v. icon or arrow) might (if feasible) be selectable by the website using the BioJS component.
Error on this page
http://polymarker.tgac.ac.uk/status?id=70
Once the page has loaded, firebug console reports:
TypeError: e is null
...n(e){var
t,n,i,s,a,u,l,c,h,d,f;for(c=[],f=e.split("\n"),h=0,d=f.length;d>h;h++)i...
msa.min.gz.js (line 2, col 70)
For example, the reference sequence which was the basis for alignment construction might be indicated by display of an arrow icon adjacent to the member, or be shown in boldface type,
RS: region selection .. when drag outside of birdseye, selection action is terminated
Suzi: Another way to squeeze the columns that have the lowest scores. The ones that are more artefactual arising from inserting columns that are there just to get every thing squared up. So these filler columns aren't quite as important biologically. This won't solve the entire problem, but it can be helpful for squeezing things in.
Any reordering or hide/view would need to send out notification to listeners that need to be kept in sync. In particular the tree viewer.
The MSA viewer should listen for selection events from other components e.g. a user selects a node in the tree view and the clade-members/individual leaf nodes are selected. A user would want to see those same sequences visually 'un/selected' in the MSA view.
We would also need synchronized scrolling. If a user scrolls up and down in the tree view (or other views showing rows of the same sequences), then they would want to be looking at the same region in the MSA viewer. Otherwise they have to scroll twice and with finicky position the 2nd time to get things aligned.
If loading this alignment http://rostlab.org/~goldberg/jalv_example.clustal from the import button, the visualized alignment is missing the aa positions
naming: choice between overview box and bird's eye view
IS:
I'm interested in this because we want to show where protein domains lie on the protein sequence. However a protein domain can be made up of discontiguous regions of sequence - so it would be great if this relationship could be modelled in the viewer (i.e. group regions of sequence together as a "domain" or "signature").
domain: { regions: [ {start: ?, stop: ?}, {start: ?, stop: ?}, ... ] }
Ther eis no use in "select all" functionality (highlights all sequences and rows in the alignment) if you cannot un-select individual rows/columns. I am not sure, if it usable to first select the entire alignment and then un-select one-by-one columns and rows. I would suggest to get rid of "select all".
Also, I would change "invert columns" and "invert rows" to simply "invert selection". This will do the same as invert rows and invert columns
An example might be locating the main MSA display at the screen center, and a summary chart showing taxonomy composition or pairwise sequence similarity in a page appendix.
Rob: The display of meta information on our current alignment viewer is done as text columns to the left of the sequence IDs. The columns can be shown/hidden by using checkboxes. I'm not sure if tooltips would be adequate, since one function of the columns is to allow the users to take in various distributions visually (such as species / taxa, or partition groups)
Items include
... and make the consensus seq always come first independent of type of ordering
When you hide columns by threshold in the main alignment window, please mark those hided columns in the birds eye view window grey.
Also, end users can supply alignment data through file load dialog boxes or through file drag-and-drop capabilities supported by some browsers through html5.
-> detect browser capabiltiies
just a local visualization without sending data to the server
sequences: border
sometimes the border is invisible
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.