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

Suggested additional Panache features #36

Open
brettChapman opened this issue Mar 28, 2023 · 7 comments
Open

Suggested additional Panache features #36

brettChapman opened this issue Mar 28, 2023 · 7 comments

Comments

@brettChapman
Copy link

I've had a few users working with Barley Panache now. A request I have is an ability to highlight selected genes of interest, perhaps a tick box to show only genes being sorted by PAV so that it becomes easier to use a panel of genes in a single view for publication figures. Also an export/reporting feature of the selected gene regions to show PAV of that region, and the genes present with their percentage PAV. These would improve the functionality of Panache a lot. Thanks.

@SingingMeerkat
Copy link
Contributor

Hi @brettChapman ,
Thank you for the new dedicated GitHub issue. Please let me know if the following could cover your needs or is a correct understanding of what you would like to achieve:

  1. Highlighting selected genes of interest:
    At a specific region, you would like to be able to hide visually some genes from the annotation track while keeping on display only some selected by the user. We could imagine a list containing the names of the genes present in the current window, with an option to toggle their visibility individually. This would hide/show their glyphs on the annotation track accordingly. It is also possible to highlight them by adding color or some kind of shadow behind them instead of hiding them completely. Highlighting by displaying them with a special color would have my preference. We could even imagine enabling users to attribute a color for each gene of their liking, though that would be more difficult to implement. A possible middle ground would be to enable a choice of color between the default black, a highlight color, and background grey (which would be equivalent to hiding them).
    When you say "being sorted by PAV", do you mean that the list of genes to highlight should be sorted with the most present gene on top for example? To make it easier to select the genes that should be highlighted?

  2. Export features
    You would like to extract a file crossing the information of PAV on a region with the gff information, something that could look like this:

# Panache PAV x GFF export
# PAV: pavFile.name
# Genes: GffFile.name
# Region: CHROMNAME from START to STOP
GeneID       |   %PAV   | StartPos | StopPos | Genome1 |  Genome2 ...
someGene     |   100%   |  25448   |  36547  |    1    |    1
anotherGene  |    97%   |    362   |  16695  |    0    |    1

... sorted with the most present gene on top.

@SingingMeerkat
Copy link
Contributor

Hi @brettChapman ,

I took some time to add an export function button that you can find in the latest versions of Panache, added with commits 7644990 (for the bananaGenomeHub branch) and commit d81a3d7 (for the main branch).
As long as both a pav file and a gff file are available, a download button is visible:
image

It enables users to export a file looking like the following:
'# Panache PAV x GFF export
'# PAV: NameOfYourPavFile.pav
'# Genes: NameOfYourGffFile.gff
'# Region: chr01 from 17597524 to 17832564

AnnotID mean start stop A B C D E F G H I J K L M N O
Ma01_g20380 86.67 17685364 17688075 100 100 100 0 100 0 100 100 100 100 100 100 100 100 100
Ma01_g20410 86.67 17777074 17777936 100 100 100 100 100 0 100 100 100 0 100 100 100 100 100
Ma01_g20340 80 17620823 17621956 100 100 100 0 0 0 100 100 100 100 100 100 100 100 100

In Panache, when you click on the download button, it creates this 'coverage' matrix, where for each annotation ID it computes a 'coverage' score. This score per genome is based on the proportion of the annotation that is covered by at least one present panBlock. A mean score is calculated and all annotations are sorted, with the most covered/present on top. The downloaded file extracts only the annotation that are visible on screen when pressing the button, but the data for the whole chromosome are created anyway so we could download these if you prefer.

I have just noticed that the header is not writing properly, I will be working on it right away.

@SingingMeerkat
Copy link
Contributor

Done! I corrected the matrix so that it displays this header now:
annotID meanCoverage annotStart annotStop A B C D E

@brettChapman
Copy link
Author

Thanks @SingingMeerkat

Sorry for the delay, I've been preoccupied with other projects. I'll test out the new updated and provide feedback when I can.

Where should the GFF and PAV files be located? At the moment I just have the corresponding JSON files uploaded to Panache

@brettChapman
Copy link
Author

Hi @SingingMeerkat

I tried with the new commit '76449907eb5600a578748bd4a097632ab5f3d7cc` on the bananaGenomeHub branch.

git cloned the branch and then did a git checkout 7644990

I noticed while ediitng the LocalFilter.vue file that new entries are available:
this.updatePavFileName('OriginOfPavData.pav');
this.updateGffFileName('OriginOfGffData.gff');

Should these point to the PAV file and GFF file used to generate the JSON files, and should they be in the Public folder? and should they have the exact same naming convention as the JSON files?

I did all that, and found that the page doesn't load up.

@SingingMeerkat
Copy link
Contributor

SingingMeerkat commented Oct 12, 2023

Hi @brettChapman , sorry for the delay, I started a PostDoc a month ago and did not have much time to check that yet.

About this.updatePavFileName('OriginOfPavData.pav'); and this.updateGffFileName('OriginOfGffData.gff');

These two lines ask the app to store the file names of the .pav and .gff that had been used to create the .json file that is preloaded, so that when you are using the app you can see on which file/data you are working.

Normally, you could put whatever you want in it as it is supposed for display purpose only.

It should not prevent the page to load though, I'll look into it.
I had troubles with the package-lock.json file (a configuration file for managing the required packages) recently, that could be related.

@brettChapman
Copy link
Author

Hi @SingingMeerkat

I managed to get it working somehow. I have found the excel spreadsheet doesn't match up to the coverage reported though for the genes. I'm looking at gene HORVU.MOREX.r3.2HG0208140. The excel spreadhsheet says either 100% or 0%. While the hover over feature for the search criteria within Panache shows some genomes only have like 80% coverage.

Screenshot 2023-10-26 at 1 03 29 pm

Screenshot 2023-10-26 at 1 05 39 pm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants