SlideShare a Scribd company logo
Improvements to GRNsight: a Web Application for
Visualizing Models of Gene Regulatory Networks
Nicole Anguiano*, Anindita Varshneya**, Kam D. Dahlquist**, John David N. Dionisio*, and Ben G. Fitzpatrick***
*Department of Electrical Engineering and Computer Science, **Department of Biology, ***Department of Mathematics, Loyola Marymount University, 1 LMU Drive, Los Angeles, CA 90045
http://dondi.github.io/GRNsight/
• The central dogma of molecular biology describes the flow of information in
a cell during gene expression from DNA to RNA to protein.
• Transcription factors control gene expression by binding to regulatory DNA
sequences.
• Activators increase gene expression.
• Repressors decrease gene expression.
• Transcription factors are themselves proteins encoded by genes.
Freeman (2002)
• A gene regulatory network (GRN) consists of genes, transcription factors,
and the regulatory connections between them, which govern the level of
expression of mRNA and proteins from those genes.
• Each node represents the gene, the mRNA, and the protein expressed
from the gene.
• Each edge represents a regulatory relationship.
• All the nodes are transcription factors themselves.
• The MATLAB model is available at http://kdahlquist.github.io/GRNmap/
• GRNmap is a differential equations model of the changes in gene
expression over time for a gene regulatory network.
• Each gene (node) in the network has an equation.
• The parameters in the model are estimated from laboratory data.
• The weight parameter, w, gives the direction (activation or repression) and
magnitude of the regulatory relationship.
• GRNmap produces an Excel spreadsheet with an adjacency matrix
representing the network.
GRNsight Accepts Microsoft Excel Files (.xlsx)
in the Proper Format
• Excel workbooks need a “network” sheet (for unweighted graphs) or a
“network_optimized_weights” sheet (for weighted graphs).
• The adjacency matrix can be symmetrical or asymmetrical.
• GRNmap input and output workbooks are accepted without adjustment.
• Adjacency matrices generated from other databases, such as
YEASTRACT, can be used with some modification.
Future Directions
Acknowledgments
References
• Further expand and refine the unit testing framework.
• Add node coloring based on expression data.
• Implement different sizes for the graph drawing area.
• Implement draggable edges to allow further graph customization.
Availability
• GRNsight is free and open to all users and there is
no login requirement.
• Web site content is available under the Creative
Commons Attribution Non-Commercial Share Alike
license.
• GRNsight code is available under the open source
BSD license.
• Usage is being tracked through Google Analytics.
• This work is partially supported by NSF award 0921038 (Kam D. Dahlquist,
Ben G. Fitzpatrick) and by the Loyola Marymount University Rains Research
Assistant Program (Nicole Anguiano).
• Chai: http://chaijs.com/
• D3.js: http://d3js.org/
• Express Framework: http://expressjs.com/
• Freeman, S. (2002) Biological Science. Upper Saddle River, New Jersey:
Prentice Hall.
• GRNmap: http://kdahlquist.github.io/GRNmap/
• node.js: http://nodejs.org/
• Mocha: http://mochajs.org/
Implemented Mocha Unit Testing Framework
Beta Version Allows for Testing of New Features
• A beta version of GRNsight was created to allow for testing of new features
and catching any potential new errors before releasing to the master set of
code.
New Unit Testing Framework Implemented
• Unit testing is a software testing method by which individual units of source
code are tested to determine whether they are fit for use.
• Prior to implementing the unit testing framework, each test spreadsheet was
manually uploaded onto the website to test for errors.
• Unit testing is now executed through Mocha, a JavaScript test framework
running on node.js.
• All tests are written in Chai, a behavior-driven development/test-driven
development assertion library for node.js.
Sample Code
Gene Regulatory Networks Can Be Illustrated
by Directed Graphs
GRNmap: Gene Regulatory Network Modeling
and Parameter Estimation
GRNsight Has Sophisticated Architecture and Follows Open Source Development Practices
GRNsight Automatically Lays Out Unweighted and Weighted Networks
GRNsight has a service-oriented architecture
• GRNsight has two pieces: a server and a web client.
• The server uses the node.js framework to receive and parse the Excel
spreadsheet uploaded by the user.
• The web client receives the data from the server and generates the
graph visualization.
Excel Spreadsheet Unweighted Graph drawn
manually with Adobe Illustrator
Produced in ~10 milliseconds
Produced in several hours
2
2. Force Graph Parameter Sliders
• Link distance determines the
minimum distance between nodes.
• Nodes have a charge, which repels
or attracts other nodes.
• The charge distance determines at
what range a node’s charge will
affect other nodes.
• Gravity determines the strength of
the force holding the nodes to the
center of the graph.
• Reset functionality sets all
parameters to default settings
• Locking the parameters prevents
any further changes
1. Menu Bar
• Four demo files can be found in the
“Demo” menu for users who do not
have their own data.
• Print functionality is accessed from
the “File” menu option.
• “File > Reload” reloads the current
graph with the active settings.
• In the “Edit > Preferences” menu,
the user can select for weighted
graphs to be displayed as
unweighted graphs.
3. Weighted graph laid out automatically
Unweighted graph laid out
automatically by GRNsight and
adjusted by hand
Produced in ~5 minutes
Weighted graph laid out
automatically by GRNsight
and adjusted by hand
Produced in ~5 min
The User Interface is Compatible with Firefox and Chrome Browsers
• File upload is through a simple HTML form element.
• Nodes are displayed as interactive HTML elements, and can be clicked and moved.
GRNsight implementation takes advantage of other open source tools
• GRNsight uses the Data-Driven Documents (D3) JavaScript library to generate a graph derived from input network
data.
• D3 dynamically manipulates HTML and Scalable Vector Graphics (SVG) to form the elements of the graph.
• GRNsight implements D3’s force layout algorithm which applies a physics-based simulation to the graph.
• D3 also allows for the fine tuning of Cascading Style Sheets (CSS), the code that styles web pages.
• GRNsight follows an open development model using an open source github.com code repository and issue
tracking.
3. Nodes, Edges, and Arrows
• Edge thickness is based on a linear scale.
• The absolute value of each weight parameter is normalized to a value between 0 and 1. Then the
thicknesses of the lines are adjusted to vary continuously from the minimum thickness (for
normalized weights near zero) to the maximum thickness (weights of 1).
• Edges with negative weights (repression) are colored cyan; edges positive weights (activation) are
colored magenta.
• Edges with normalized weight values between -0.05 and 0.05 are colored grey to signify a weak
influence on the target gene.
• 0 represents no relationship.
• Initially, 1 represents a regulatory relationship where the gene specified by
the column controls the gene specified by the rows.
• After the parameters have been estimated, a positive weight value
indicates activation and a negative weight value indicates repression.
• The magnitude of the weight defines the strength of the relationship.
However, GRNmap does not generate a visual representation of GRNs
1
Error Catching was Greatly Improved
• Robustness was greatly extended.
• Instead of crashing when given an improperly
formatted or incorrect file, GRNsight returns an error.
• Information about the error is returned to the user in
a modal window, without crashing the server.
504 total visitors
as of 19 March 2015

More Related Content

What's hot

Scalable Similarity-Based Neighborhood Methods with MapReduce
Scalable Similarity-Based Neighborhood Methods with MapReduceScalable Similarity-Based Neighborhood Methods with MapReduce
Scalable Similarity-Based Neighborhood Methods with MapReduce
sscdotopen
 
J. Park, H. Shim, AAAI 2022, MLILAB, KAISTAI
J. Park, H. Shim, AAAI 2022, MLILAB, KAISTAIJ. Park, H. Shim, AAAI 2022, MLILAB, KAISTAI
J. Park, H. Shim, AAAI 2022, MLILAB, KAISTAI
MLILAB
 
G. Park, J.-Y. Yang, et. al., NeurIPS 2020, MLILAB, KAIST AI
G. Park, J.-Y. Yang, et. al., NeurIPS 2020, MLILAB, KAIST AIG. Park, J.-Y. Yang, et. al., NeurIPS 2020, MLILAB, KAIST AI
G. Park, J.-Y. Yang, et. al., NeurIPS 2020, MLILAB, KAIST AI
MLILAB
 
Learning to Learn by Gradient Descent by Gradient Descent
Learning to Learn by Gradient Descent by Gradient DescentLearning to Learn by Gradient Descent by Gradient Descent
Learning to Learn by Gradient Descent by Gradient Descent
Katy Lee
 
J. Park, AAAI 2022, MLILAB, KAIST AI
J. Park, AAAI 2022, MLILAB, KAIST AIJ. Park, AAAI 2022, MLILAB, KAIST AI
J. Park, AAAI 2022, MLILAB, KAIST AI
MLILAB
 
ICML 2017 Meta network
ICML 2017 Meta networkICML 2017 Meta network
ICML 2017 Meta network
Katy Lee
 
An Improved PageRank Algorithm for Multilayer Networks
An Improved PageRank Algorithm for Multilayer NetworksAn Improved PageRank Algorithm for Multilayer Networks
An Improved PageRank Algorithm for Multilayer Networks
Subhajit Sahu
 
Feature disentanglement in generating a three dimensional structure from a tw...
Feature disentanglement in generating a three dimensional structure from a tw...Feature disentanglement in generating a three dimensional structure from a tw...
Feature disentanglement in generating a three dimensional structure from a tw...
Chung Hyung Jin
 
T. Yoon, et. al., ICLR 2021, MLILAB, KAIST AI
T. Yoon, et. al., ICLR 2021, MLILAB, KAIST AIT. Yoon, et. al., ICLR 2021, MLILAB, KAIST AI
T. Yoon, et. al., ICLR 2021, MLILAB, KAIST AI
MLILAB
 
Comparison between Cloud Mirror, Mesos Cluster, and Google Omega
Comparison between Cloud Mirror, Mesos Cluster, and Google OmegaComparison between Cloud Mirror, Mesos Cluster, and Google Omega
Comparison between Cloud Mirror, Mesos Cluster, and Google Omega
GIST (Gwangju Institute of Science and Technology)
 
UNET: Massive Scale DNN on Spark
UNET: Massive Scale DNN on SparkUNET: Massive Scale DNN on Spark
UNET: Massive Scale DNN on Spark
Zhan Zhang
 
Cloud Partitioning of Load Balancing Using Round Robin Model
Cloud Partitioning of Load Balancing Using Round Robin ModelCloud Partitioning of Load Balancing Using Round Robin Model
Cloud Partitioning of Load Balancing Using Round Robin Model
IJCERT
 

What's hot (12)

Scalable Similarity-Based Neighborhood Methods with MapReduce
Scalable Similarity-Based Neighborhood Methods with MapReduceScalable Similarity-Based Neighborhood Methods with MapReduce
Scalable Similarity-Based Neighborhood Methods with MapReduce
 
J. Park, H. Shim, AAAI 2022, MLILAB, KAISTAI
J. Park, H. Shim, AAAI 2022, MLILAB, KAISTAIJ. Park, H. Shim, AAAI 2022, MLILAB, KAISTAI
J. Park, H. Shim, AAAI 2022, MLILAB, KAISTAI
 
G. Park, J.-Y. Yang, et. al., NeurIPS 2020, MLILAB, KAIST AI
G. Park, J.-Y. Yang, et. al., NeurIPS 2020, MLILAB, KAIST AIG. Park, J.-Y. Yang, et. al., NeurIPS 2020, MLILAB, KAIST AI
G. Park, J.-Y. Yang, et. al., NeurIPS 2020, MLILAB, KAIST AI
 
Learning to Learn by Gradient Descent by Gradient Descent
Learning to Learn by Gradient Descent by Gradient DescentLearning to Learn by Gradient Descent by Gradient Descent
Learning to Learn by Gradient Descent by Gradient Descent
 
J. Park, AAAI 2022, MLILAB, KAIST AI
J. Park, AAAI 2022, MLILAB, KAIST AIJ. Park, AAAI 2022, MLILAB, KAIST AI
J. Park, AAAI 2022, MLILAB, KAIST AI
 
ICML 2017 Meta network
ICML 2017 Meta networkICML 2017 Meta network
ICML 2017 Meta network
 
An Improved PageRank Algorithm for Multilayer Networks
An Improved PageRank Algorithm for Multilayer NetworksAn Improved PageRank Algorithm for Multilayer Networks
An Improved PageRank Algorithm for Multilayer Networks
 
Feature disentanglement in generating a three dimensional structure from a tw...
Feature disentanglement in generating a three dimensional structure from a tw...Feature disentanglement in generating a three dimensional structure from a tw...
Feature disentanglement in generating a three dimensional structure from a tw...
 
T. Yoon, et. al., ICLR 2021, MLILAB, KAIST AI
T. Yoon, et. al., ICLR 2021, MLILAB, KAIST AIT. Yoon, et. al., ICLR 2021, MLILAB, KAIST AI
T. Yoon, et. al., ICLR 2021, MLILAB, KAIST AI
 
Comparison between Cloud Mirror, Mesos Cluster, and Google Omega
Comparison between Cloud Mirror, Mesos Cluster, and Google OmegaComparison between Cloud Mirror, Mesos Cluster, and Google Omega
Comparison between Cloud Mirror, Mesos Cluster, and Google Omega
 
UNET: Massive Scale DNN on Spark
UNET: Massive Scale DNN on SparkUNET: Massive Scale DNN on Spark
UNET: Massive Scale DNN on Spark
 
Cloud Partitioning of Load Balancing Using Round Robin Model
Cloud Partitioning of Load Balancing Using Round Robin ModelCloud Partitioning of Load Balancing Using Round Robin Model
Cloud Partitioning of Load Balancing Using Round Robin Model
 

Similar to Anguiano varshneya lmu_symposium_2015

Practice discovering biological knowledge using networks approach.
Practice discovering biological knowledge using networks approach.Practice discovering biological knowledge using networks approach.
Practice discovering biological knowledge using networks approach.
Elena Sügis
 
Social Network Analysis Using Gephi
Social Network Analysis Using Gephi Social Network Analysis Using Gephi
Social Network Analysis Using Gephi
Goa App
 
Biolayout Marblar Feb13
Biolayout Marblar Feb13Biolayout Marblar Feb13
Biolayout Marblar Feb13
marblar
 
Wits presentation 6_28072015
Wits presentation 6_28072015Wits presentation 6_28072015
Wits presentation 6_28072015
Beatrice van Eden
 
The Application of LinkWinds to EOS
The Application of LinkWinds to EOSThe Application of LinkWinds to EOS
The Application of LinkWinds to EOS
The HDF-EOS Tools and Information Center
 
201907 AutoML and Neural Architecture Search
201907 AutoML and Neural Architecture Search201907 AutoML and Neural Architecture Search
201907 AutoML and Neural Architecture Search
DaeJin Kim
 
Agent Based Modeling and Simulation - Overview and Tools
Agent Based Modeling and Simulation - Overview and ToolsAgent Based Modeling and Simulation - Overview and Tools
Agent Based Modeling and Simulation - Overview and Tools
Stathis Grigoropoulos
 
Pathway and network analysis
Pathway and network analysisPathway and network analysis
Pathway and network analysis
Manar Al-Eslam Mattar
 
Unit-III(Design).pptx
Unit-III(Design).pptxUnit-III(Design).pptx
Unit-III(Design).pptx
Fajar Baskoro
 
Community analysis using graph representation learning on social networks
Community analysis using graph representation learning on social networksCommunity analysis using graph representation learning on social networks
Community analysis using graph representation learning on social networks
Marco Brambilla
 
20191107 deeplearningapproachesfornetworks
20191107 deeplearningapproachesfornetworks20191107 deeplearningapproachesfornetworks
20191107 deeplearningapproachesfornetworks
tm1966
 
A load balancing model based on cloud partitioning for the public cloud. ppt
A  load balancing model based on cloud partitioning for the public cloud. ppt A  load balancing model based on cloud partitioning for the public cloud. ppt
A load balancing model based on cloud partitioning for the public cloud. ppt
Lavanya Vigrahala
 
Cvpr 2018 papers review (efficient computing)
Cvpr 2018 papers review (efficient computing)Cvpr 2018 papers review (efficient computing)
Cvpr 2018 papers review (efficient computing)
DonghyunKang12
 
MSF: Sync your Data On-Premises And To The Cloud - dotNetwork Gathering, Oct ...
MSF: Sync your Data On-Premises And To The Cloud - dotNetwork Gathering, Oct ...MSF: Sync your Data On-Premises And To The Cloud - dotNetwork Gathering, Oct ...
MSF: Sync your Data On-Premises And To The Cloud - dotNetwork Gathering, Oct ...
sameh samir
 
Testing strategies -2
Testing strategies -2Testing strategies -2
Testing strategies -2
Divya Tiwari
 
Ch 11-component-level-design
Ch 11-component-level-designCh 11-component-level-design
Ch 11-component-level-design
SHREEHARI WADAWADAGI
 
[Apache Kafka® Meetup by Confluent] Graph-based stream processing
[Apache Kafka® Meetup by Confluent] Graph-based stream processing[Apache Kafka® Meetup by Confluent] Graph-based stream processing
[Apache Kafka® Meetup by Confluent] Graph-based stream processing
confluent
 
Generating test cases using UML Communication Diagram
Generating test cases using UML Communication Diagram Generating test cases using UML Communication Diagram
Generating test cases using UML Communication Diagram
Praveen Penumathsa
 
Cahall Final Intern Presentation
Cahall Final Intern PresentationCahall Final Intern Presentation
Cahall Final Intern Presentation
Daniel Cahall
 
Convolutional Neural Networks : Popular Architectures
Convolutional Neural Networks : Popular ArchitecturesConvolutional Neural Networks : Popular Architectures
Convolutional Neural Networks : Popular Architectures
ananth
 

Similar to Anguiano varshneya lmu_symposium_2015 (20)

Practice discovering biological knowledge using networks approach.
Practice discovering biological knowledge using networks approach.Practice discovering biological knowledge using networks approach.
Practice discovering biological knowledge using networks approach.
 
Social Network Analysis Using Gephi
Social Network Analysis Using Gephi Social Network Analysis Using Gephi
Social Network Analysis Using Gephi
 
Biolayout Marblar Feb13
Biolayout Marblar Feb13Biolayout Marblar Feb13
Biolayout Marblar Feb13
 
Wits presentation 6_28072015
Wits presentation 6_28072015Wits presentation 6_28072015
Wits presentation 6_28072015
 
The Application of LinkWinds to EOS
The Application of LinkWinds to EOSThe Application of LinkWinds to EOS
The Application of LinkWinds to EOS
 
201907 AutoML and Neural Architecture Search
201907 AutoML and Neural Architecture Search201907 AutoML and Neural Architecture Search
201907 AutoML and Neural Architecture Search
 
Agent Based Modeling and Simulation - Overview and Tools
Agent Based Modeling and Simulation - Overview and ToolsAgent Based Modeling and Simulation - Overview and Tools
Agent Based Modeling and Simulation - Overview and Tools
 
Pathway and network analysis
Pathway and network analysisPathway and network analysis
Pathway and network analysis
 
Unit-III(Design).pptx
Unit-III(Design).pptxUnit-III(Design).pptx
Unit-III(Design).pptx
 
Community analysis using graph representation learning on social networks
Community analysis using graph representation learning on social networksCommunity analysis using graph representation learning on social networks
Community analysis using graph representation learning on social networks
 
20191107 deeplearningapproachesfornetworks
20191107 deeplearningapproachesfornetworks20191107 deeplearningapproachesfornetworks
20191107 deeplearningapproachesfornetworks
 
A load balancing model based on cloud partitioning for the public cloud. ppt
A  load balancing model based on cloud partitioning for the public cloud. ppt A  load balancing model based on cloud partitioning for the public cloud. ppt
A load balancing model based on cloud partitioning for the public cloud. ppt
 
Cvpr 2018 papers review (efficient computing)
Cvpr 2018 papers review (efficient computing)Cvpr 2018 papers review (efficient computing)
Cvpr 2018 papers review (efficient computing)
 
MSF: Sync your Data On-Premises And To The Cloud - dotNetwork Gathering, Oct ...
MSF: Sync your Data On-Premises And To The Cloud - dotNetwork Gathering, Oct ...MSF: Sync your Data On-Premises And To The Cloud - dotNetwork Gathering, Oct ...
MSF: Sync your Data On-Premises And To The Cloud - dotNetwork Gathering, Oct ...
 
Testing strategies -2
Testing strategies -2Testing strategies -2
Testing strategies -2
 
Ch 11-component-level-design
Ch 11-component-level-designCh 11-component-level-design
Ch 11-component-level-design
 
[Apache Kafka® Meetup by Confluent] Graph-based stream processing
[Apache Kafka® Meetup by Confluent] Graph-based stream processing[Apache Kafka® Meetup by Confluent] Graph-based stream processing
[Apache Kafka® Meetup by Confluent] Graph-based stream processing
 
Generating test cases using UML Communication Diagram
Generating test cases using UML Communication Diagram Generating test cases using UML Communication Diagram
Generating test cases using UML Communication Diagram
 
Cahall Final Intern Presentation
Cahall Final Intern PresentationCahall Final Intern Presentation
Cahall Final Intern Presentation
 
Convolutional Neural Networks : Popular Architectures
Convolutional Neural Networks : Popular ArchitecturesConvolutional Neural Networks : Popular Architectures
Convolutional Neural Networks : Popular Architectures
 

Recently uploaded

KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
Gerardo Pardo-Castellote
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
Green Software Development
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
Sven Peters
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 

Recently uploaded (20)

KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 

Anguiano varshneya lmu_symposium_2015

  • 1. Improvements to GRNsight: a Web Application for Visualizing Models of Gene Regulatory Networks Nicole Anguiano*, Anindita Varshneya**, Kam D. Dahlquist**, John David N. Dionisio*, and Ben G. Fitzpatrick*** *Department of Electrical Engineering and Computer Science, **Department of Biology, ***Department of Mathematics, Loyola Marymount University, 1 LMU Drive, Los Angeles, CA 90045 http://dondi.github.io/GRNsight/ • The central dogma of molecular biology describes the flow of information in a cell during gene expression from DNA to RNA to protein. • Transcription factors control gene expression by binding to regulatory DNA sequences. • Activators increase gene expression. • Repressors decrease gene expression. • Transcription factors are themselves proteins encoded by genes. Freeman (2002) • A gene regulatory network (GRN) consists of genes, transcription factors, and the regulatory connections between them, which govern the level of expression of mRNA and proteins from those genes. • Each node represents the gene, the mRNA, and the protein expressed from the gene. • Each edge represents a regulatory relationship. • All the nodes are transcription factors themselves. • The MATLAB model is available at http://kdahlquist.github.io/GRNmap/ • GRNmap is a differential equations model of the changes in gene expression over time for a gene regulatory network. • Each gene (node) in the network has an equation. • The parameters in the model are estimated from laboratory data. • The weight parameter, w, gives the direction (activation or repression) and magnitude of the regulatory relationship. • GRNmap produces an Excel spreadsheet with an adjacency matrix representing the network. GRNsight Accepts Microsoft Excel Files (.xlsx) in the Proper Format • Excel workbooks need a “network” sheet (for unweighted graphs) or a “network_optimized_weights” sheet (for weighted graphs). • The adjacency matrix can be symmetrical or asymmetrical. • GRNmap input and output workbooks are accepted without adjustment. • Adjacency matrices generated from other databases, such as YEASTRACT, can be used with some modification. Future Directions Acknowledgments References • Further expand and refine the unit testing framework. • Add node coloring based on expression data. • Implement different sizes for the graph drawing area. • Implement draggable edges to allow further graph customization. Availability • GRNsight is free and open to all users and there is no login requirement. • Web site content is available under the Creative Commons Attribution Non-Commercial Share Alike license. • GRNsight code is available under the open source BSD license. • Usage is being tracked through Google Analytics. • This work is partially supported by NSF award 0921038 (Kam D. Dahlquist, Ben G. Fitzpatrick) and by the Loyola Marymount University Rains Research Assistant Program (Nicole Anguiano). • Chai: http://chaijs.com/ • D3.js: http://d3js.org/ • Express Framework: http://expressjs.com/ • Freeman, S. (2002) Biological Science. Upper Saddle River, New Jersey: Prentice Hall. • GRNmap: http://kdahlquist.github.io/GRNmap/ • node.js: http://nodejs.org/ • Mocha: http://mochajs.org/ Implemented Mocha Unit Testing Framework Beta Version Allows for Testing of New Features • A beta version of GRNsight was created to allow for testing of new features and catching any potential new errors before releasing to the master set of code. New Unit Testing Framework Implemented • Unit testing is a software testing method by which individual units of source code are tested to determine whether they are fit for use. • Prior to implementing the unit testing framework, each test spreadsheet was manually uploaded onto the website to test for errors. • Unit testing is now executed through Mocha, a JavaScript test framework running on node.js. • All tests are written in Chai, a behavior-driven development/test-driven development assertion library for node.js. Sample Code Gene Regulatory Networks Can Be Illustrated by Directed Graphs GRNmap: Gene Regulatory Network Modeling and Parameter Estimation GRNsight Has Sophisticated Architecture and Follows Open Source Development Practices GRNsight Automatically Lays Out Unweighted and Weighted Networks GRNsight has a service-oriented architecture • GRNsight has two pieces: a server and a web client. • The server uses the node.js framework to receive and parse the Excel spreadsheet uploaded by the user. • The web client receives the data from the server and generates the graph visualization. Excel Spreadsheet Unweighted Graph drawn manually with Adobe Illustrator Produced in ~10 milliseconds Produced in several hours 2 2. Force Graph Parameter Sliders • Link distance determines the minimum distance between nodes. • Nodes have a charge, which repels or attracts other nodes. • The charge distance determines at what range a node’s charge will affect other nodes. • Gravity determines the strength of the force holding the nodes to the center of the graph. • Reset functionality sets all parameters to default settings • Locking the parameters prevents any further changes 1. Menu Bar • Four demo files can be found in the “Demo” menu for users who do not have their own data. • Print functionality is accessed from the “File” menu option. • “File > Reload” reloads the current graph with the active settings. • In the “Edit > Preferences” menu, the user can select for weighted graphs to be displayed as unweighted graphs. 3. Weighted graph laid out automatically Unweighted graph laid out automatically by GRNsight and adjusted by hand Produced in ~5 minutes Weighted graph laid out automatically by GRNsight and adjusted by hand Produced in ~5 min The User Interface is Compatible with Firefox and Chrome Browsers • File upload is through a simple HTML form element. • Nodes are displayed as interactive HTML elements, and can be clicked and moved. GRNsight implementation takes advantage of other open source tools • GRNsight uses the Data-Driven Documents (D3) JavaScript library to generate a graph derived from input network data. • D3 dynamically manipulates HTML and Scalable Vector Graphics (SVG) to form the elements of the graph. • GRNsight implements D3’s force layout algorithm which applies a physics-based simulation to the graph. • D3 also allows for the fine tuning of Cascading Style Sheets (CSS), the code that styles web pages. • GRNsight follows an open development model using an open source github.com code repository and issue tracking. 3. Nodes, Edges, and Arrows • Edge thickness is based on a linear scale. • The absolute value of each weight parameter is normalized to a value between 0 and 1. Then the thicknesses of the lines are adjusted to vary continuously from the minimum thickness (for normalized weights near zero) to the maximum thickness (weights of 1). • Edges with negative weights (repression) are colored cyan; edges positive weights (activation) are colored magenta. • Edges with normalized weight values between -0.05 and 0.05 are colored grey to signify a weak influence on the target gene. • 0 represents no relationship. • Initially, 1 represents a regulatory relationship where the gene specified by the column controls the gene specified by the rows. • After the parameters have been estimated, a positive weight value indicates activation and a negative weight value indicates repression. • The magnitude of the weight defines the strength of the relationship. However, GRNmap does not generate a visual representation of GRNs 1 Error Catching was Greatly Improved • Robustness was greatly extended. • Instead of crashing when given an improperly formatted or incorrect file, GRNsight returns an error. • Information about the error is returned to the user in a modal window, without crashing the server. 504 total visitors as of 19 March 2015

Editor's Notes

  1. Kill abstract Change to sans serif font Make title bigger Make title background white Use full names Super script to associate names with correct department Background color: make it dark green, make writing on white background and writing in black/dark green 4 columns!!! Smaller pictures Bold titles References can be 12pt Acknowledgements can be 16pt Everything else is 18-24pt Titles don’t need to be bigger than 36pt Remove circles from the arrowhead diagram, group the related labels together Include menu bar Testing/error handling – sample error (we don’t crash with errors!) Mouseovers for edges screenshot