usadellab / untwistApp

A tool for visualization of phenotypic data, GWAS analysis and some Bioinformatics tools
GNU General Public License v3.0
1 stars 0 forks source link

GWAS plots and results #11

Closed BjoernUsadel closed 2 months ago

BjoernUsadel commented 11 months ago

there is still structural and functional annotation and functional NEVER worked. It also as pointed out previsouly makes no sense. And is this based on selection? Clicking between the plots crashed the website.

ataulhaleem commented 11 months ago

How it works.

  1. Manhattan plot shows a range of p-values observed in the GWAS analysis.

  2. The structural annotation table is based on the significance p-value threshold (default 5 x 10 ^ -8). If any of the p-values are above this threshold the structural annotation table will show up. If no p-value reaches this threshold there will be no annotation table. The p-value can be changed using a drop down menu. The default p-value used here is standard for GWAS, but the option to change it is introduced for different schools of thought.

  3. The functional annotation table is based on structural annotations table (step 2 above). If

    • any of the structural annotations have genes that also fall in mercator bins, the table will be populated
    • any of the structural annotations have genes that do not fall in mercator bins, there will be no annotation table.
    • there is no structural annotations table, there will be no functional annotations table.

Example For the following trait, the Manhattan plot looks like this

image

Now there is no p-value that reaches significance threshold. The structural and functional gene annotations tabs look like this

image

image

Looking at the range of my p-values and deciding on a sensible threshold (if possible ), one can change the p-value threshold. which will update both the annotations.

For the sake of demonstration, looking at Manhattanplot I have changed the p-value thresold (now 5 x 10 ^ -6). The corresponding table shows up if there are some features found

image

image

in this case we have found both annotations. but it is not always the case, may be none of the genes are present in the structural annotations and only non-coding DNA structures are found, in this case functional gene annotations will be null.

ataulhaleem commented 11 months ago

I hope it explains, please let me know if any changes are still required

BjoernUsadel commented 11 months ago

a) it crashes very often you can not interact b) and it makes no sense to take structural and functional apart There should only be one joined table c) changing the threshold has no effect I see many good p-values but nothing shows up And

ataulhaleem commented 11 months ago

a) The version of the app instance that I have made available is still dev version, so that you can observe live changes, but it can break any time when i make changes in the code as per your recommendation. So most probably that is the case, but if it happens on the weekend then I will need to have look at your console log, if it is available it will greatly help in troubleshooting the issue. The other reason for crashing could also be the token expiry, which is normal and its life time has to be discussed, currently its 2 hours.

b) two tables have been combined into one

c) It is possible that the genomic regions that are found in GWAS results to contain significant SNPs are not assigned any features (un-annotated regions of the genome) in the annotations used https://github.com/usadellab/untwistApp#annotations for our GWAS module. Ideally it should always return something. I have now updated it to print no annotations found in case there is no entry in the annotations.db for a given SNP, only chromosome and position will be displayed. It will also be helpful for troubleshooting if you could share the trait you analysed, where you could find significant p-values but not annotations. There are two options for improvement here as well

  1. we can top our annotations.db with annotations for repeat sequences as well
  2. we can use a window to find genes in the flanking regions given a window size. As explained previously at the moment the app only look for features that contain the SNP within their start and end position.