https://github.com/cmdcolin/jbrowse-plugin-gwas
https://github.com/cmdcolin/jbrowse-plugin-gwas
Last synced: 10 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/cmdcolin/jbrowse-plugin-gwas
- Owner: cmdcolin
- Created: 2021-02-17T00:00:41.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2025-02-05T18:42:35.000Z (over 1 year ago)
- Last Synced: 2025-04-12T09:54:01.625Z (about 1 year ago)
- Language: TypeScript
- Size: 845 KB
- Stars: 4
- Watchers: 3
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# jbrowse-plugin-gwas
Plugin for displaying GWAS results such as manhattan plot renderings
## Screenshot
 
## Data format
jbrowse-plugin-gwas will render any features with a "score". A common format is
a BED-like file, perhaps with tabix added. Example with plain BED, where the
score is in column 5
```
chr22 1000 5000 rs123 84.141
chr22 2000 6000 rs456 40.12312
```
Sometimes, the file format is not a strict BED but something with just one
coordinate instead of a start and end. Example with BED-like data (only one
coordinate column)
```
#chrom pos rsid ref alt neg_log_pvalue beta stderr_beta alt_allele_freq
1 721290 rs12565286 G C 0.275233 . . .
1 752566 rs3094315 G A 0.0315638 . . .
1 775659 rs2905035 A G 0.183626 . . .
1 777122 rs2980319 A T 0.207258 . . .
1 779322 rs4040617 A G 0.0326393 . . .
1 780785 rs2977612 T A 0.0225965 . . .
```
This file format can be indexed using tabix with something BED-like
```
tabix -0 -b 2 -s 1 -e 2 -f out.bed.gz
```
The beginning (-b) and end (-e) coordinates of the features are set to the same
column (2), and the sequence column (-s) is 1. Also assumes zero-based
coordinates (-0)
Note that this is just one format that can be used for the plugin, any adapter
can be used that provides features with a score attribute, and it assumes the
score is already -log10(p) transformed (this means if your file has raw
p-values, you may need to modify them or add a -log10(p) to the file)
## Example config
The below config uses the "scoreColumn" attribute to set neg_log_pvalue (as seen
in above section) to be the score that is plotted
```json
{
"type": "FeatureTrack",
"trackId": "gwas_track",
"name": "GWAS",
"category": ["Annotation"],
"assemblyNames": ["hg19"],
"adapter": {
"type": "BedTabixAdapter",
"scoreColumn": "neg_log_pvalue",
"bedGzLocation": {
"uri": "https://s3.amazonaws.com/jbrowse.org/genomes/hg19/gwas/summary_stats.txt.gz"
},
"index": {
"location": {
"uri": "https://s3.amazonaws.com/jbrowse.org/genomes/hg19/gwas/summary_stats.txt.gz.tbi"
},
"indexType": "TBI"
}
},
"displays": [
{
"displayId": "gwas_display",
"type": "LinearManhattanDisplay"
}
]
}
```
## Usage in jbrowse-web
Add to the "plugins" of your JBrowse Web config. The unpkg CDN should be stable,
or you can download the js file to your server
```json
{
"plugins": [
{
"name": "GWAS",
"url": "https://unpkg.com/jbrowse-plugin-gwas/dist/jbrowse-plugin-gwas.umd.production.min.js"
}
]
}
```
This plugin is currently quite basic, and there is no mouseover interactivity or
drawn labels on features
#### Demo
https://jbrowse.org/code/jb2/main/index.html?config=https%3A%2F%2Funpkg.com%2Fjbrowse-plugin-gwas%2Fdist%2Fconfig.json&session=share-iehjT6AoHd&password=lZS7v
### For use in jbrowse/react-linear-genome-view
See [DEVELOPMENT](DEVELOPMENT.md)