Network Visualization and Analysis with Cytoscape

Post on 10-May-2015

2.937 views 2 download

description

Introductory presentation for Network Visualization and Analysis with Cytoscape

Transcript of Network Visualization and Analysis with Cytoscape

1

Intro to Cytoscape

Network Visualization and Analysis with Cytoscape

Alex Picoapico@gladstone.ucsf.edu

Hey, early birds! USB:Cytoscape Tutorial/2.8 Installers/…

2

The Plan

• USB flash drive:– Slides .pptx– The “Book”– 6 Tutorials– Cytoscape installers (plus updated plugin)

3

The Plan

• Schedule– Introductions (1:30)– Overview– Cytoscape concepts and UI– Tutorial #1– 10 min break– WikiPathways and Pathway Analysis (2:30)– More Tutorials…– Coffee break– Jing Wang - NetGestalt (3:30)– Q&A (4:20)

4

Introductions

• Me– Executive Director, NRNB– Systems Biology Group, Gladstone Institutes– 6 Years on Cytoscape core development team

• GenMAPP-CS Workspaces, criteriaMapper, GO-Elite, BubbbleRouter, Mosaic, NOA, PathExplorer

– Co-founder and developer of WikiPathways– Background: structural biology, pathway analysis

• You?

5

Why networks?• Networks provide an integrating context for data

• Commonly understood diagrammatic representation for concepts and relationships

• Provides structure that helps reduce underlying complexity of the data

• More efficient than searching databases element-by-element

• Network tools give us functionality for studying complex processes• Analysis of global characteristics of the

data, e.g. degree, clustering coefficient, shortest paths, centrality, density

• Identify key elements (hubs) and ‘interesting’ subnets

• Help elucidate mechanisms of interaction

• Visualization of data superimposed upon the network

• Help understand how a process is modulated or attenuated by a stimulus

6

Applications of Network Biology

• Gene Function Prediction –shows connections to sets of genes/proteins involved in same biological process

• Detection of protein complexes/other modular structures – discover modularity & higher order organization (motifs, feedback loops)

• Network evolution – biological process(s) conservation across species

• Prediction of new interactions and functional associations – Statistically significant domain-domain correlations in protein interaction network to predict protein-protein or genetic interaction

jActiveModules, UCSD

PathBlast, UCSD

mCode, University of Toronto

DomainGraph, Max Planck Institute

7

Applications of Networks in Disease

• Identification of disease subnetworks – identification of disease network subnetworks that are transcriptionally active in disease.

• Subnetwork-based diagnosis – source of biomarkers for disease classification, identify interconnected genes whose aggregate expression levels are predictive of disease state

• Subnetwork-based gene association – map common pathway mechanisms affected by collection of genotypes (SNP, CNV)

Agilent Literature Search

Mondrian, MSKCC

PinnacleZ, UCSD

8

The Challenge

• Making sense out of biological networks….

9

The Challenge

• Biological networks (nodes and edges)– Seldom tell us anything by themselves– Analysis involves:

• Understanding the characteristics of the network– Modularity– Comparison with other networks (specifically random

networks)

– Visualization involves:• Placing nodes in a meaningful way (layouts)• Mapping biologically relevant data to the network

– Node size– Node color– Edge weights

10

The Challenge

11

Biological Network Taxonomy

• Pathways– Signaling– Metabolic– Regulatory– Phylogeny (could also be thought of as similarity)

12

Biological Network Taxonomy

• Interaction Networks– Protein-Protein interactions– Protein-Ligand interactions– Genetic interactions– Domain-Domain interactions– Others

• Residue or atomic interactions• Cell/cell interactions• Population biology• Epidemiology• Social networks

13

Biological Network Taxonomy

• Similarity– Protein-Protein similarity– Chemical similarity– Ligand similarity (SEA)– Others

• Tag clouds• Topic maps

14

Visualization of Biological Networks

• Depiction• Data Mapping• Layouts• Animation

15

Depiction

• There are various ways to depict biological networks:– Node-Link (graph) representation

• This is what we most often think of

– Partitioned Node-Link representation• Split graph into discrete partitions based on some

feature

– Matrix representation• Can be useful for very dense networks• Can also map information into cells of matrix

– e.g. degree, color scale (heat map)

16

Data mapping

• Mapping of data values associated with graph elements onto graph visuals

• Visual attributes– Node fill color, border color, border width, size,

shape, opacity, label– Edge type, color, width, ending type, ending size,

ending color

• Mapping types– Passthrough (labels)– Continuous (numeric values)– Discrete (categories)

17

Data mapping

• Avoid cluttering your visualization with too much data– Map the data you are specifically interested in to

call out meaningful differences– Mapping too much data to visual attributes may

just confuse the viewer– Can always create multiple networks and map

different values

18

Layouts

• Layouts determine the location of nodes and (sometimes) the paths of edges

• Types:– Simple

• Grid• Partitions

– Hierarchical • layout data as a tree or hierarchy• Works best when there are no loops

– Circular (Radial)• arrange nodes around a circle• could use node attributes to govern position

– e.g. degree sorted

19

Layouts

• Types:– Force-Directed

• simulate edges as springs• may be weighted or unweighted

– Combining layouts• Use a general layout (force directed) for the entire

graph, but use hierarchical or radial to focus on a particular portion

– Multi-layer layouts• Partition graph, layout each partition then layout

partitions

– Many, many others

20

Layouts

• Use layouts to convey the relationships between the nodes

• Layout algorithms may need to be “tuned” to fit your network– LayoutsSettings… menu

• Lots of parameters to change layout algorithm behavior

• Can also consider laying out portions of your network

21

Animation

• Animation is useful to show changes in a network:– Over a time series– Over different conditions– Between species

22

Introduction to Cytoscape

• Overview• Core Concepts

– Networks vs. Attributes– VizMapper– Apps

• Working with Data– Loading network from the Web– Importing networks from csv files or Excel– Importing attributes from csv files or Excel– The attribute browser

• Cytoscape tips & tricks

23

WHAT IS CYTOSCAPE?

www.cytoscape.org Visualization Integration Analysis

Cytoscape

24

Open source Cross platform Consortium

University of Toronto

Cytoscape

25

Core Concepts

• Networks and Annotations

Annotationse.g., attributes or data

Networkse.g, biological pathways

26

Core Concepts

• Visual Mapping with VizMapper

AnnotationsNetworks

VizMapper

27

Core Concepts

• Cytoscape Apps!

http://apps.cytoscape.org

28

Cytoscape

• Common use cases– Visualizing:

• PPI• Pathways

– Integration:• Expression profiles• Other state data

– Analysis:• Network properties• Data mapped onto network

29

Loading Networks• Use import network from table:

– Excel file– Comma or tab delimited text

30

Loading Networks• Use import network from table:

– Excel file– Comma or tab delimited text

• Use import network from web services– Allows query and load from a variety of services:

• Pathway commons• WikiPathways (if GPML plugin is loaded)• NCBI Entrez Eutilities• BioCyc

31

Loading Attributes• Loading attributes

– Use import attribute from table

32

Loading Attributes• Loading attributes

– Use import attribute from table

• The Data Panel

33

Tutoral #1

Introduction to Cytoscape – Part 1

http://tutorials.cytoscape.org

34

Examples/Demos

• clusterMaker– Clustering and cluster visualizations

• Agilent LitSearch Tool– Extracting networks from abstracts

• WikiPathways– Search and load pathway diagrams

37

Cytoscape 2.8 vs. Cytoscape 3

• Cytoscape 2.8:– One network. All other networks are projections

on that network.• Essentially a rooted tree• No way to duplicate nodes without sharing attributes

• Cytoscape 3:– Allows multiple roots.

• Can have multiple trees• Each group of networks that shares a single root is

called a collection

42

Loading Networks (3.0)

• Conceptually the same as 2.8– Use import network from table:

• Excel file• Comma or tab delimited text

• …but– Must specify if you want a new network collection

(tree)– If not, you need to specify the join column

43

Loading Tables (3.0)• Same as 2.8, except:

– Use Import table from file– You need to specify the network collection

44

Data Panel

45

Visual Style Manager

46

Cytoscape 2.8 vs 3.0

• Compare and Contrast– 3.0 is more stable– 3.0 has improved model and UI– 2.8 has more appsDepends on what you need and when you need it

• Timing– Current release: 3.0.2– 3.1 coming in October– 22 apps and counting!

47

More Tutorals

http://tutorials.cytoscape.org

48

Tips & Tricks

• “Root graph”– “There is one graph to rule them all….”– The networks in Cytoscape are all “views” on a

single graph.– Changing the attribute for a node in one network

will also change that attribute for a node with the same ID in all other loaded networks

– There is no way to “copy” a node and keep the same ID

– Make a copy of the session

49

Tips & Tricks

• Network views– When you open a large network, you will not get a

view by default– To improve interactive performance, Cytoscape

has the concept of “Levels of Detail”• Some visual attributes will only be apparent when you

zoom in• The level of detail for various attributes can be changed

in the preferences• To see what things will look like at full detail:

– ViewShow Graphics Details

50

Tips & Tricks

• Sessions– Sessions save pretty much everything:

• Networks• Properties• Visual styles• Screen sizes

– Saving a session on a large screen may require some resizing when opened on your laptop

51

Tips & Tricks

• Logging– By default, Cytoscape writes it’s logs to the Error

Dialog: HelpError Dialog– Can change a preference to write it to the console

• EditPreferencesProperties…• Set logger.console to true• Don’t forget to save your preferences• Restart Cytoscape

– (can also turn on debugging: cytoscape.debug, but I don’t recommend it)

52

Tips & Tricks

• Memory– Cytoscape uses lots of it– Doesn’t like to let go of it– An occasional restart when working with large

networks is a good thing– Destroy views when you don’t need them– Java doesn’t give us a good way to get the memory

right at start time• Cytoscape 2.7 does a much better job at “guessing”

good default memory sizes than previous versions

53

Tips & Tricks

• .cytoscape directory– Your defaults and any plugins downloaded from the

plugin manager will go here– Sometimes, if things get really messed up, deleting (or

renaming) this directory can give you a “clean slate”

• Plugin manager– “Outdated” doesn’t necessarily mean “won’t work”– Plugin authors don’t always update their plugins

immediately after new releases– Click on “Show outdated plugins” to see the entire list

of plugins.