Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Restore sequence retrieval under mouse cursor #62

Closed
2 of 3 tasks
josiahseaman opened this issue Oct 29, 2018 · 2 comments
Closed
2 of 3 tasks

Restore sequence retrieval under mouse cursor #62

josiahseaman opened this issue Oct 29, 2018 · 2 comments
Assignees
Milestone

Comments

@josiahseaman
Copy link
Owner

josiahseaman commented Oct 29, 2018

DDV originally had the ability to load the file from the server, then click on a particular spot and get the sequence from that position. This code was disabled during the design of TileLayout, but the inactivated code is all still there inside nucleotideNumber.js. This code needs to be reactivated and updated for the new FluentDNA feature set.

The main use case to optimize for is retrieving a 300bp sequence from a 1GB genome with multiple scaffolds. Changes might need to be made to handle multiple scaffolds, though currently the "nucleotide number" being output does match the character file position under the mouse cursor. Ideally, grabbing a small sequence should not require requesting the entire genome from the server (this is why the feature was removed in the first place). Instead, loading only the scaffold in question might be a healthy middle ground.

One static file solution would be to create a fasta directory and chunk the genome into 10MB chunks which could be retrieved independently. This would scale well with large genomes as well as draft genomes with millions of contigs. In Python, all the staging for this happens in TileLayout.output_fasta()

Unfortunately in my understanding, it's not possible to submit a dynamic query to the static file server we're using for FluentDNA. In terms of IO speeds, the use running the server locally and browsing a new private genome will be a fairly common use case.

Notes: It might help that in ContigSpacingJSON a contig.name will contain the name of the cursor contig found in nucleotide_coordinates_to_sequence_index(). #39 is relevant in that we are going to need to change ContigSpacingJSON formatting to list the name of the contig, then the local (rather than file) nucleotide index.

  • Old functionality re enabled
  • Fetching less than a full genome
  • Chunking large chromosomes or dynamic query?
@josiahseaman
Copy link
Owner Author

TransposonLayout and MultipleAlignmentLayout (MSA) currently not supported.
TransposonLayout composes a source from many fragments.
MultipleAlignmentLayout source is multiple files (feature pending).

@josiahseaman
Copy link
Owner Author

josiahseaman commented Nov 14, 2018

5602fd0
image

Putting the mouse in the upper left corner gets you the first letter of the sequence with a look-back of the contig name. All whitespace has been scrubbed, which in this case looks a bit off. This is based on file coordinates. Contig coordinates are the next priority.

josiahseaman added a commit that referenced this issue Nov 15, 2018
josiahseaman added a commit that referenced this issue Nov 15, 2018
…of sequence, verified +1 index. Fighting with CSS.
josiahseaman added a commit that referenced this issue Nov 15, 2018
josiahseaman added a commit that referenced this issue Nov 16, 2018
josiahseaman added a commit that referenced this issue Nov 21, 2018
josiahseaman added a commit that referenced this issue Nov 21, 2018
…or, fetch that file, find the contig, and show the sequence in that contig. Each fasta source has it's own coordinate frame listed under ContigSpacingJSON, fasta_sources, and each_layout.
josiahseaman added a commit that referenced this issue Nov 21, 2018
josiahseaman added a commit that referenced this issue Nov 23, 2018
josiahseaman added a commit that referenced this issue Nov 23, 2018
josiahseaman added a commit that referenced this issue Nov 23, 2018
josiahseaman added a commit that referenced this issue Nov 29, 2018
josiahseaman added a commit that referenced this issue Dec 4, 2018
…ayout now migrated as a subclass of LayoutFrame
josiahseaman added a commit that referenced this issue Dec 4, 2018
…ray code logic to track reversing coordinate frames on odd numbers.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants