+ All Categories
Home > Science > BiVi Intermine Slides

BiVi Intermine Slides

Date post: 22-Jan-2018
Category:
Upload: yo-yehudi
View: 424 times
Download: 1 times
Share this document with a friend
25
Biology (visualisation) is hard Source: XKCD.com/1605 (CC BY-NC 2.5)
Transcript
Page 1: BiVi Intermine Slides

Biology (visualisation) is hard

Source: XKCD.com/1605 (CC BY-NC 2.5)

Page 2: BiVi Intermine Slides

Intermine 2.0Analyse, Visualise, Explore

Yo Yehudi

Page 3: BiVi Intermine Slides

Who Are We?

➔ Started 2002, funded to 2018

➔ InterMine is an open source data warehouse and analysis system

Gos Micklem’s group Six devs, one biologist

Page 4: BiVi Intermine Slides

What is InterMine?InterMine has three parts:

1. Database

a. Load data from different data sets into single database

2. Webapp

a. Mine the data

b. Visualise!

3. Web services

Open Source Data Warehouse

github.com/intermine

Page 5: BiVi Intermine Slides

Who uses InterMine?1. Many model organism databases use InterMine

humanmine.org (Cambridge)

mousemine.org (MGI)

ratmine.org (RGD)

zebrafishmine.org (ZFIN)

yeastmine.org (SGD)

wormine.org (WormBase)

2. Lots of other minesphytomine (JGI) - over 50 plant genomes

targetmine (NIBIO) - drug targets

Visit intermine.org for the full list

Page 6: BiVi Intermine Slides

What sort of data is in InterMine?● Genomic

● Pathways

● Interactions (complex and binary)

● Protein structures

● GO and other ontologies (Mammalian phenotype, etc)

● Protein domains

● Variation

● Expression and regulation

● Lots more ...

Page 7: BiVi Intermine Slides

How does one get the data from an InterMine?1. Search tools in UI

a. Keyword search

b. Sophisticated query tools

2. Web services

a. Public API

b. http://iodocs.labs.intermine.org/ - interactive documentation esyN uses InterMine web services for their

network editor tool

Page 8: BiVi Intermine Slides

Getting data from an InterMine - UIData mining: you can build sophisticated queries and cross-domain multi-step questions.

Example:

1. For my human gene set, give me all the genes not annotated with Alzheimer’s.

2. Give me all the genes annotated/enriched with the wnt signaling pathway or GO term (implicated in Alzheimer’s) .

3. See which genes are expressed in the brain.

4. See what is known about these human genes in mouse (via homologues).

Query results:

Page 9: BiVi Intermine Slides

$ bower install imjs im-tables

$ npm install imjs im-tables

Getting data from an InterMine - Web servicesJavascript example using the im tables library:var imtables = require('imtables');var selector = '#some-elem';var service = {root: 'http://humanmine.org/humanmine/service/'};var query = { "from": "Gene", "select": [ "primaryIdentifier", "symbol", "name", "pathways.name", "pathways.identifier", "organism.shortName" ]};

imtables.loadTable( selector, // Can also be an element, or a jQuery object. {"start":0,"size":25}, // May be null {service: service, query: query} // May be an imjs.Query).then( function (table) { console.log('Table loaded', table); }, function (error) { console.error('Could not load table', error); });

Easy aspie

Imag

e credit: C

C-B

Y-2

0 B

ill Wa

rd via F

lickr

Page 10: BiVi Intermine Slides

Internet years pass even quicker than dog years

➔It’s been a long time since FlyMine (which became InterMine) was started in 2002. What can we do better with new tools?

Page 11: BiVi Intermine Slides

What’s changed, and why?Feature Older Intermine < 2.0 New Intermine 2.0 UI

Page framework JSPs, with much of the logic hardcoded in Java classes

Webservice-driven via Angular

Extensibility Limited, often requires Java backend changes

Modular. Tools can be included:Via IFrameAs Angular controllersDirect from Bower

Data sources Single PostgreSQL DB instance Can draw from multiple InterMines (e.g. Fly, Human, and Yeast data can co-exist) or any other public API, e.g. UniProt or IntAct (at the EBI)

Powered by Java, Tomcat, Struts, PostgreSQL Clojure, Angular, PostgreSQL, Web Services

Workflow Browse / not always as clear as could be desired. User could end up in analysis ‘dead ends’ when unsure how to proceed.

Designed to make previous steps easily recoverable, and expose logical future steps based on current data view.

Page 12: BiVi Intermine Slides

Web ServicesTo the rescue

Page 13: BiVi Intermine Slides

Web Services: Let’s build something new

The challenge: We have lots of data, mostly displayed in table format.

So: We pulled out the trusty front end dev toolbelt and came up with a WebService and AngularJS driven framework.

Now: We need visualisation tools!

Page 14: BiVi Intermine Slides

Modularity

BioJS components are great for InterMine 2.0. They’re usually easy to slot in.

Intermine 2.0 is designed to allow any webapp to be integrated with minimal

effort.

Page 15: BiVi Intermine Slides

Modularity: how we make it workEach tool gets a basic I/O wrapper allowing it to:

➔ Take in data, e.g. a protein, a gene, a list of genes, etc.

➔ Export data

◆ Example: given a single gene (input) we might show an interaction graph, and output the whole set of genes that it interacts with.

Page 16: BiVi Intermine Slides

WorkflowWe do this by saving your history and making it easy to find your ‘next step’ from your current data

Intermine 2.0 is designed to allow any webapp to be integrated with minimal

effort.

Page 17: BiVi Intermine Slides

Workflow: discoverable data, discoverable tools

Ever gone browsing, made good observations along the way - and then forgotten what they were when it's time to write them up?

Your browsing history actions are saved, so you can retrace your steps easily.

Previous Steps

Page 18: BiVi Intermine Slides

Workflow: discoverable data, discoverable tools

We wanted to avoid dead ends.

So rather than making the user figure out what they can do with their data, the ‘next steps’ menu exposes all the tools which know how to do things with the data you have

Next Steps

Page 19: BiVi Intermine Slides

PR

EV

IOU

S S

TE

PS

(HIS

TO

RY

)

NE

XT

ST

EP

S

Page 20: BiVi Intermine Slides

Examples

Page 21: BiVi Intermine Slides

UniProt Protein Viewer

Pre-made (fantastic!) BioJS component which displays protein features given a protein accession.

InterMine 2.0 wrapper facilitates data discovery by:

Accepts multiple Proteins and Genes

Allows users to quickly switch between Proteins/Genes

Shows all associated proteins if a Gene is chosen.

Page 22: BiVi Intermine Slides

Example: CytoscapeSlightly more complex wrapper required as the nodes and edges need to be created manually based on InterMine data

Input: A single gene or protein

Output: all the genes or proteins which interact with the chosen gene.

Cytoscape - a component

Page 23: BiVi Intermine Slides

EBI IntAct - Complex ViewerDeveloped by Colin Combe at the Rappsilber Laboratory at Edinburgh University.

Shows complex interactions between proteins and small molecules. Used by IntAct Complex Portal and Intermine.

We are currently preparing to release as a BioJS component.

Page 24: BiVi Intermine Slides

TL;DR:InterMine 2.0 makes it easier to get data into your tools.

If you think we should add your tool - let us know!

Page 25: BiVi Intermine Slides

Thank You!Yo Yehudi

Official alpha testing begins Jan 5 2016.

For a sneak peek, visithttp://beta.intermine.org/We’d love to hear your feedback and thoughts

yoyehudi

[email protected]

@intermineorg

www.intermine.org

[email protected]


Recommended