The current InterMine interface is powered by JSPs (example: http://www.flymine.org) and will be discontinued in the next few years. InterMine is already building a new interface named BlueGenes which is a web interface to query & view data from 30+ mines worldwide from same familiar interface.
The project aimed to develop standalone data visualization tools for BlueGenes which could possibly be useful to biologists using the interface.
⛳️ Visualization 1: Tissue Expression Visualizer
-
Tissue Expression Visualizer can help users (biologists) to visualize tissue expression values and tissue expression by stage values with help of expression graphs.
-
They easily can let you know which tissues are up-regulated, down-regulated or normal.
- It provides a clear interface to sort and filter data. Also, expression by stage graph clearly depicts higher expression values on later stages and lower ones earlier based on colour shades.
Code Repository: https://github.com/intermine/bluegenes-tissue-expression-visualizer (checkout my commits here)
NPM Module: https://www.npmjs.com/package/@intermine/bluegenes-tissue-expression-visualizer
⛳️ Visualization 2: 3D Protein Visualizer
- 3D Protein Visualizer helps visualize protein structures in different types of viewer in 3D. Users can select the PDB (Protein Data Bank) id they want to visualize and the visualizer fetches them from the RCSB data source and renders the 3D structure of the protein. This tool supports both
Gene
andProtein
pages in BlueGenes.
Code Repository: https://github.com/intermine/bluegenes-protein-visualizer (checkout my commits here)
NPM Module: https://www.npmjs.com/package/@intermine/bluegenes-protein-visualizer
⛳️ Visualization 3: Multiple Sequence Alignment Viewer
- Multiple Sequence Alignment Viewer helps visualize relation and linkages between the proteins associated with a particular gene. For example, check the value of first column the M, M and M being the same colour makes it more eye catching.
Code Repositories:
-
Visualizer Frontend: https://github.com/intermine/bluegenes-msa-viewer (checkout my commits here)
-
Alignment Service: https://github.com/intermine/sequence-alignment-service (checkout my commits here)
NPM Module: https://www.npmjs.com/package/@intermine/bluegenes-msa-viewer
⛳️ Visualization 4: Expression Value Box+Swarm Visualizer
- Expression Box+Swarm Visualizer helps visualize expression data using combination of box and swarm plots.
- It shows disease and organism expression data on separate box plots side by side giving a five pointer summary of dataset and clearly showing which organism part has higher expression value and which area needs more attention. On hovering more information is shown.
Code Repository: https://github.com/intermine/bluegenes-expression-box-swarm-visualizer (checkout my commits here)
NPM Module: https://www.npmjs.com/package/@intermine/bluegenes-expression-box-swarm-visualizer
⛳️ Visualization 5: GO Term Visualizer
- It helps visualize GO-term (Gene Ontology Term) plotted against P values.
- The enrichment analysis on a list is to see if a particular GO term is over represented in that list like “cancer”.
- It can be used to visualize GO Terms vs Gene Count. Again, each bar in the bar-chart is labelled by the annotation corresponding to the particular GO Term.
Code Repository: https://github.com/intermine/bluegenes-GO-term-visualizer (checkout my commits here)
NPM Module: https://www.npmjs.com/package/@intermine/bluegenes-go-term-visualizer
⛳️ Visualization 6: Protein Atlas Tissue Expression
- Protein Atlas Tissue Expression helps visualize overall and singular antibody staining values in different organs and cells respectively.
- Uses heatmap to properly show different antibody staining levels.
Code Repository: https://github.com/intermine/bluegenes-protein-atlas-tissue-expression-visualizer (checkout my commits here)
NPM Module: https://www.npmjs.com/package/@intermine/bluegenes-protein-atlas-tissue-expression-visualizer
⛳️ Visualization 7 & 8: Tissue and Disease ArrayExpress
- Two separate visualisations for tissue and disease expression, using ArrayExpress data from HumanMine.
Code Repositories:
- https://github.com/intermine/bluegenes-tissue-expression-arrayexpress-visualizer (checkout my commits here)
- https://github.com/intermine/bluegenes-disease-expression-arrayexpress-visualizer (checkout my commits here)
NPM Modules:
- https://www.npmjs.com/package/@intermine/bluegenes-tissue-expression-arrayexpress-visualizer
- https://www.npmjs.com/package/@intermine/bluegenes-disease-expression-arrayexpress-visualizer
⛳️ Improvements in BlueGenes Tool Scaffolder
- Added
eslint
,prettier
support out of the box for code linting - Added
husky
,lint-staged
support for before commit / push validation - Added
jest
support with example - Added optional to choose
react
based scaffolded tool
Code Repository: https://github.com/intermine/generator-bluegenes-tool (checkout my commits here)
Note:
- Tests were written for all of the above work using
jest
framework. - Code linting rules were followed in every part of the code developed by me.
EBI Expression Atlas Visualizer
The challenge we're facing currently with this is that the EBI heatmap generator library's npm
package doesn't work as expected and hence we're doing the script workaround as of now.
Pull Request: intermine/bluegenes-ebi-expression-atlas-heatmap#1
Thanks for the great support by my mentors (@Adrian, @Herald and @Yo). I learned a lot of things in these summers spending time on this project, working with a research team, trying to understand requirements and finally implementing them was overall an amazing experience. We had time to time calls connecting Intermine Community people with each other, discussing how to make open source better and sometimes one to one mentor to student call discussing the project and getting feedback.