Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-1443

Implement Depth Graph (Soft-clip)

    Details

    • Type: New Feature
    • Status: Closed (View Workflow)
    • Priority: Minor
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
    • Story Points:
      2.5
    • Sprint:
      Summer 5: 3 Aug - 14 Aug, Summer 6: 17 Aug - 28 Aug, Summer 7: 31 Aug - 11 Sep, Fall 1: 14 Sep - 25 Sep

      Description

      The track operation Depth Graph (All) is used to summarize the depth of reads. It does not include soft-clipped parts of the read.

      Add Depth Graph (Soft-clip) as a track operation for bam/sam. This would create a depth graph for just soft-clip parts of reads.

      This should be possible to do by copying how Depth Graph (All) functions, but using only syms of instance BamSoftChildSingletonSeqSym.

        Attachments

          Issue Links

            Activity

            Hide
            pbadzuh Philip Badzuh (Inactive) added a comment -

            Please see my current progress and notes regarding this issue:

            https://bitbucket.org/pbadzuh/igb_pbdev/branch/IGBF-1443#diff

            • The changes I have made create a new track operation UI element and configure it for use in the code.
            • The new operation can be seen by opening a bam file in IGB (requires that a respective bai file be present in the same directory), right-clicking on the BAM track title (on the left) -> Track Operations -> Depth Graph (Soft-clip All).
            • Todo: Update the collectSoftclipSpans method in the getSymmetrySoftclipSummary method (SoftClipDepthOperator.java) such that only the spans of soft-clip portions of aligned reads are extracted.
            • Step through the collectStartSpans and collectLeafSpans methods using the netbeans debugger to understand the data structures and methods being used. This is where I stopped; the output of these methods seemed to be the same with the test files I used, however, this doesn’t seem to be correct. I was not able to identify what exactly constitutes a ‘start span’, so that my be a good start.
            • The getSpanSummary function called afterward in getSymmetrySoftclipSummary should generate a depth graph for the entire portions of the isolated soft-clip spans of aligned reads. Should be kept as is.
            • I have attached the files I used for testing. Additional files that may be useful in testing can be found here.
            Show
            pbadzuh Philip Badzuh (Inactive) added a comment - Please see my current progress and notes regarding this issue: https://bitbucket.org/pbadzuh/igb_pbdev/branch/IGBF-1443#diff The changes I have made create a new track operation UI element and configure it for use in the code. The new operation can be seen by opening a bam file in IGB (requires that a respective bai file be present in the same directory), right-clicking on the BAM track title (on the left) -> Track Operations -> Depth Graph (Soft-clip All). Todo: Update the collectSoftclipSpans method in the getSymmetrySoftclipSummary method ( SoftClipDepthOperator.java ) such that only the spans of soft-clip portions of aligned reads are extracted. Step through the collectStartSpans and collectLeafSpans methods using the netbeans debugger to understand the data structures and methods being used. This is where I stopped; the output of these methods seemed to be the same with the test files I used, however, this doesn’t seem to be correct. I was not able to identify what exactly constitutes a ‘start span’, so that my be a good start. The getSpanSummary function called afterward in getSymmetrySoftclipSummary should generate a depth graph for the entire portions of the isolated soft-clip spans of aligned reads. Should be kept as is. I have attached the files I used for testing. Additional files that may be useful in testing can be found here .
            Hide
            nfreese Nowlan Freese added a comment -

            Important files:
            DepthOperator.java
            SeqSymSummarizer.java
            SeqUtils.java
            BAMSym.java

            Show
            nfreese Nowlan Freese added a comment - Important files: DepthOperator.java SeqSymSummarizer.java SeqUtils.java BAMSym.java
            Hide
            ssegu Sai Supreeth Segu (Inactive) added a comment -

            Implemented Soft Clip and attaching a screenshot for reference.

            Show
            ssegu Sai Supreeth Segu (Inactive) added a comment - Implemented Soft Clip and attaching a screenshot for reference.
            Show
            ssegu Sai Supreeth Segu (Inactive) added a comment - Please review my changes on this link https://bitbucket.org/supreeth27/integrated-genome-browser/commits/9c50e7d7dcbafdecbed40cfcfc781f1adb67200d These changes are done by Philip Badzuh https://bitbucket.org/supreeth27/integrated-genome-browser/commits/9921fba899dc022b5df80aee051bafe8307fb6c9
            Hide
            ann.loraine Ann Loraine added a comment -

            I have reviewed the code and made a few comments. I am not recommending any changes, apart from possibly adding more comments to the new method in SeqUtils. But this is completely optional – if you think the current documentation along with the commit history is enough to guide future developers, then that is fine with me! As you have recently done a deep dive into this part of the code, your judgement is best.

            I have not done a functional review. Nowlan Freese - would you do a functional review when you get the chance? Also please check the code for possible "gotchas" we may not have considered.

            Show
            ann.loraine Ann Loraine added a comment - I have reviewed the code and made a few comments. I am not recommending any changes, apart from possibly adding more comments to the new method in SeqUtils. But this is completely optional – if you think the current documentation along with the commit history is enough to guide future developers, then that is fine with me! As you have recently done a deep dive into this part of the code, your judgement is best. I have not done a functional review. Nowlan Freese - would you do a functional review when you get the chance? Also please check the code for possible "gotchas" we may not have considered.
            Hide
            nfreese Nowlan Freese added a comment -

            Sai Supreeth Segu are all of the changes (including Philips) pushed to your branch?

            Show
            nfreese Nowlan Freese added a comment - Sai Supreeth Segu are all of the changes (including Philips) pushed to your branch?
            Hide
            ssegu Sai Supreeth Segu (Inactive) added a comment -

            Nowlan Freese All the changes(including Philips) are on my branch.
            Link to my branch: https://bitbucket.org/supreeth27/integrated-genome-browser/src/IGBF-1443/

            Show
            ssegu Sai Supreeth Segu (Inactive) added a comment - Nowlan Freese All the changes(including Philips) are on my branch. Link to my branch: https://bitbucket.org/supreeth27/integrated-genome-browser/src/IGBF-1443/
            Hide
            nfreese Nowlan Freese added a comment - - edited

            Tested Supreeth's branch on Mac with files from GIAB and the test softclip files in Dropbox.

            Depth Graph (Soft-clip All) works correctly for all tested BAM/SAM files.
            Depth Graph (Soft-clip All) option only shows for BAM/SAM files (this is the correct behavior, as only BAM/SAM will have softclips).

            Code is similar to existing depth graph all code, but is separate so should not interfere.

            Recommend pull request Sai Supreeth Segu.

            Show
            nfreese Nowlan Freese added a comment - - edited Tested Supreeth's branch on Mac with files from GIAB and the test softclip files in Dropbox. Depth Graph (Soft-clip All) works correctly for all tested BAM/SAM files. Depth Graph (Soft-clip All) option only shows for BAM/SAM files (this is the correct behavior, as only BAM/SAM will have softclips). Code is similar to existing depth graph all code, but is separate so should not interfere. Recommend pull request Sai Supreeth Segu .
            Show
            ssegu Sai Supreeth Segu (Inactive) added a comment - Created pull request. Link for pull request: https://bitbucket.org/lorainelab/integrated-genome-browser/pull-requests/826/igbf-1443
            Hide
            nfreese Nowlan Freese added a comment -

            [~aloraine] if you could please review the pull request.

            Show
            nfreese Nowlan Freese added a comment - [~aloraine] if you could please review the pull request.
            Hide
            ann.loraine Ann Loraine added a comment - - edited

            Merged. Master branch installers are available and ready for testing.

            Show
            ann.loraine Ann Loraine added a comment - - edited Merged. Master branch installers are available and ready for testing.
            Hide
            nfreese Nowlan Freese added a comment -

            Tested master dmg installer for Mac.

            Depth Graph (Soft-clip All) working correctly.

            Closing issue.

            Show
            nfreese Nowlan Freese added a comment - Tested master dmg installer for Mac. Depth Graph (Soft-clip All) working correctly. Closing issue.

              People

              • Assignee:
                ssegu Sai Supreeth Segu (Inactive)
                Reporter:
                nfreese Nowlan Freese
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: