SlideShare a Scribd company logo
Using Web Standards to
create Interactive Data
 Visualizations for the
          Web


   Nicolas Garcia Belmonte - Dec. 2009
Agenda

• JavaScript InfoVis Toolkit Overview
• Web Standards, JavaScript and Graphics
• What’s next for the JIT (v. 1.2)
• What’s next for Web Standards (WebGL)
• Introducing V8-GL
JavaScript InfoVis Toolkit

• Web Based Interactive Data Visualizations
• Multiple Graph/Tree Layouts
• Modular, Extensible, Composable
• Web Standards Based
Graph/Tree Layouts
Modular
       Grab only what you need

HyperTree
                                    SunBurst
TreeMap
             JavaScript InfoVis
                                  ForceDirected
                  Toolkit
 RGraph
                                      Icicle
SpaceTree
Extensible
• Define custom Nodes and Edges
• Add Custom Animations (linear,
  Elastic, etc.)
Composable
Add Visualizations as Node/Edge rendering
     functions to other visualizations
Web Standards Based
Web Standards
          JavaScript


• Dynamic, Expressive, Powerful
• Support in all Browsers
• Large Community
Web Standards
JavaScript: Language Features

 • Dynamic
 • Weakly typed
 • Differential Inheritance
 • First-class Functions
 • Object Mutability
 • Booleans as Defaults
 • etc.
Web Standards
                                              JavaScript: 100% Faster
SunSpider runs per minute




                            65.00

                            48.75

                            32.50

                            16.25

                               0
                                    WebKit 3.0          WebKit 3.1                SquirrelFish SquirrelFish X
                                         Source: http://webkit.org/blog/214/introducing-squirrelfish-extreme/
Web Standards
Everybody wants to make JavaScript Faster




   • Apple Safari - SquirrelFish Extreme
   • Mozilla Firefox - TraceMonkey
   • Google Chrome - V8
   • Opera - Carakan
Web Standards


   HTML Document
Web Standards
  HTML5
                          Header

• Audio                            Nav
• Video                            Form
• Drag n Drop   Section


• Canvas                           Image


• Storage                 Footer
• etc.
Web Standards
   CSS3
                           Header


• Gradients                         Nav

• Text Effects   Section
                                    Form

• Transforms                        Image
• Animations
• etc.                     Footer
Canvas
“A Scriptable Image Tag”
Canvas
                    Initialization


<canvas id=”tutorial” width=500 height=500></canvas>



  var canvas = document.getElementById(“tutorial”);
  var ctx = canvas.getContext(“2d”);
Canvas
          Drawing Shapes


ctx.fillStyle = “rgb(200, 0, 0)”;
ctx.fillRect(10, 10, 55, 50);

ctx.fillStyle = “rgba(0, 0, 200, 0.5)”;
ctx.fillRect(30, 30, 55, 50);
Canvas

    Benefits            Weak Points
Good Performance   No notion of elements
   Simple API      Code gets too verbose
Why JS + Canvas?

 • Native Browser Technologies
 • Seamless Integration
 • High Interoperability
 • No third-party libraries
 • Access to a large community
JavaScript InfoVis Toolkit
      Applications
  Visualizing Linux Package Dependencies




          Source: http://demos.thejit.org/example/rgraph/example1/
JavaScript InfoVis Toolkit
      Applications
   Visualizing Artist-Band Relationships




         Source: http://demos.thejit.org/example/hypertree/example1/
JavaScript InfoVis Toolkit
      Applications
    Some (public) user Applications

        CRS Management UI
       ROOT project at CERN
     Project at Macalester College
        Game Stats at Dystopia
     Neural Network Visualization
What’s next for the JIT?
                Version 1.2

• SunBurst, Icicle and
  Force-Directed
  Visualizations
• Mouse Controlled
  Transforms
• And more...
What’s next for the
            Web?

                    WebGL



Already available in WebKit and Firefox nightlies (*)
V8-GL
Write Hardware Accelerated Desktop Graphics with JS




           http://github.com/philogb/v8-gl/
Questions?

  philogb@gmail.com
   http://blog.thejit.org
http://github.com/philogb
    http://thejit.org
Ad

Recommended

HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1
James Pearce
 
What is HTML 5?
What is HTML 5?
Susan Winters
 
How to Develop a Rich, Native-quality User Experience for Mobile Using Web St...
How to Develop a Rich, Native-quality User Experience for Mobile Using Web St...
David Kaneda
 
JavaScript front end performance optimizations
JavaScript front end performance optimizations
Chris Love
 
Thats Not Flash?
Thats Not Flash?
Mike Wilcox
 
Develop a vanilla.js spa you and your customers will love
Develop a vanilla.js spa you and your customers will love
Chris Love
 
Flash And Dom
Flash And Dom
Mike Wilcox
 
Advanced front end debugging with ms edge and ms tools
Advanced front end debugging with ms edge and ms tools
Chris Love
 
Service workers your applications never felt so good
Service workers your applications never felt so good
Chris Love
 
Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)
Nicholas Zakas
 
Thinking in Components
Thinking in Components
FITC
 
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Nicholas Zakas
 
Great Responsive-ability Web Design
Great Responsive-ability Web Design
Mike Wilcox
 
Browser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom Menace
Nicholas Zakas
 
Enough with the JavaScript already!
Enough with the JavaScript already!
Nicholas Zakas
 
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
edm00se
 
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011
Timothy Fisher
 
Html5 Overview
Html5 Overview
Daniel Arndt Alves
 
Mobile Web Speed Bumps
Mobile Web Speed Bumps
Nicholas Zakas
 
Don't make me wait! or Building High-Performance Web Applications
Don't make me wait! or Building High-Performance Web Applications
Stoyan Stefanov
 
Responsive Websites and Grid-Based Layouts by Gabriel Walt
Responsive Websites and Grid-Based Layouts by Gabriel Walt
AEM HUB
 
High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)
Nicholas Zakas
 
HTML5 and CSS3: does now really mean now?
HTML5 and CSS3: does now really mean now?
Chris Mills
 
WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)
Shumpei Shiraishi
 
Html5 Fit: Get Rid of Love Handles
Html5 Fit: Get Rid of Love Handles
Chris Love
 
jQuery 1.9 and 2.0 - Present and Future
jQuery 1.9 and 2.0 - Present and Future
Richard Worth
 
Video.js - How to build and HTML5 Video Player
Video.js - How to build and HTML5 Video Player
steveheffernan
 
Web Apps and more
Web Apps and more
Yan Shi
 
Web standards and Visual Studio web tools
Web standards and Visual Studio web tools
David Voyles
 
Una web todos los dispositivos.
Una web todos los dispositivos.
philogb
 

More Related Content

What's hot (20)

Service workers your applications never felt so good
Service workers your applications never felt so good
Chris Love
 
Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)
Nicholas Zakas
 
Thinking in Components
Thinking in Components
FITC
 
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Nicholas Zakas
 
Great Responsive-ability Web Design
Great Responsive-ability Web Design
Mike Wilcox
 
Browser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom Menace
Nicholas Zakas
 
Enough with the JavaScript already!
Enough with the JavaScript already!
Nicholas Zakas
 
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
edm00se
 
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011
Timothy Fisher
 
Html5 Overview
Html5 Overview
Daniel Arndt Alves
 
Mobile Web Speed Bumps
Mobile Web Speed Bumps
Nicholas Zakas
 
Don't make me wait! or Building High-Performance Web Applications
Don't make me wait! or Building High-Performance Web Applications
Stoyan Stefanov
 
Responsive Websites and Grid-Based Layouts by Gabriel Walt
Responsive Websites and Grid-Based Layouts by Gabriel Walt
AEM HUB
 
High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)
Nicholas Zakas
 
HTML5 and CSS3: does now really mean now?
HTML5 and CSS3: does now really mean now?
Chris Mills
 
WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)
Shumpei Shiraishi
 
Html5 Fit: Get Rid of Love Handles
Html5 Fit: Get Rid of Love Handles
Chris Love
 
jQuery 1.9 and 2.0 - Present and Future
jQuery 1.9 and 2.0 - Present and Future
Richard Worth
 
Video.js - How to build and HTML5 Video Player
Video.js - How to build and HTML5 Video Player
steveheffernan
 
Web Apps and more
Web Apps and more
Yan Shi
 
Service workers your applications never felt so good
Service workers your applications never felt so good
Chris Love
 
Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)
Nicholas Zakas
 
Thinking in Components
Thinking in Components
FITC
 
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Nicholas Zakas
 
Great Responsive-ability Web Design
Great Responsive-ability Web Design
Mike Wilcox
 
Browser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom Menace
Nicholas Zakas
 
Enough with the JavaScript already!
Enough with the JavaScript already!
Nicholas Zakas
 
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
edm00se
 
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011
Timothy Fisher
 
Mobile Web Speed Bumps
Mobile Web Speed Bumps
Nicholas Zakas
 
Don't make me wait! or Building High-Performance Web Applications
Don't make me wait! or Building High-Performance Web Applications
Stoyan Stefanov
 
Responsive Websites and Grid-Based Layouts by Gabriel Walt
Responsive Websites and Grid-Based Layouts by Gabriel Walt
AEM HUB
 
High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)
Nicholas Zakas
 
HTML5 and CSS3: does now really mean now?
HTML5 and CSS3: does now really mean now?
Chris Mills
 
WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)
Shumpei Shiraishi
 
Html5 Fit: Get Rid of Love Handles
Html5 Fit: Get Rid of Love Handles
Chris Love
 
jQuery 1.9 and 2.0 - Present and Future
jQuery 1.9 and 2.0 - Present and Future
Richard Worth
 
Video.js - How to build and HTML5 Video Player
Video.js - How to build and HTML5 Video Player
steveheffernan
 
Web Apps and more
Web Apps and more
Yan Shi
 

Viewers also liked (14)

Web standards and Visual Studio web tools
Web standards and Visual Studio web tools
David Voyles
 
Una web todos los dispositivos.
Una web todos los dispositivos.
philogb
 
Social data visualization
Social data visualization
Cristina Serban
 
Advanced Visualizations
Advanced Visualizations
nsrivast
 
Data visualization in JavaScript
Data visualization in JavaScript
Wenting ZHAO
 
New Tools for Visualization in JavaScript - Sept. 2011
New Tools for Visualization in JavaScript - Sept. 2011
philogb
 
JavaScript InfoVis Toolkit - Create interactive data visualizations for the web
JavaScript InfoVis Toolkit - Create interactive data visualizations for the web
philogb
 
Creating Interactive Data Visualizations for the Web - YOW! Developer Confere...
Creating Interactive Data Visualizations for the Web - YOW! Developer Confere...
philogb
 
SUPPORT CRED
SUPPORT CRED
Alex Sandro da Silva
 
2016-09-28 Are You ADA Compliant? Ensuring Your Website is Accessible to Peop...
2016-09-28 Are You ADA Compliant? Ensuring Your Website is Accessible to Peop...
Raffa Learning Community
 
Up and Down the Python Data & Web Visualization Stack by Rob Story PyData SV ...
Up and Down the Python Data & Web Visualization Stack by Rob Story PyData SV ...
PyData
 
Data Visualization in Health
Data Visualization in Health
Ramon Martinez
 
SharePoint 2010 Web Standards & Accessibility
SharePoint 2010 Web Standards & Accessibility
Mavention
 
Visualized Conference and jQuery Conference
Visualized Conference and jQuery Conference
Keiichiro Ono
 
Web standards and Visual Studio web tools
Web standards and Visual Studio web tools
David Voyles
 
Una web todos los dispositivos.
Una web todos los dispositivos.
philogb
 
Social data visualization
Social data visualization
Cristina Serban
 
Advanced Visualizations
Advanced Visualizations
nsrivast
 
Data visualization in JavaScript
Data visualization in JavaScript
Wenting ZHAO
 
New Tools for Visualization in JavaScript - Sept. 2011
New Tools for Visualization in JavaScript - Sept. 2011
philogb
 
JavaScript InfoVis Toolkit - Create interactive data visualizations for the web
JavaScript InfoVis Toolkit - Create interactive data visualizations for the web
philogb
 
Creating Interactive Data Visualizations for the Web - YOW! Developer Confere...
Creating Interactive Data Visualizations for the Web - YOW! Developer Confere...
philogb
 
2016-09-28 Are You ADA Compliant? Ensuring Your Website is Accessible to Peop...
2016-09-28 Are You ADA Compliant? Ensuring Your Website is Accessible to Peop...
Raffa Learning Community
 
Up and Down the Python Data & Web Visualization Stack by Rob Story PyData SV ...
Up and Down the Python Data & Web Visualization Stack by Rob Story PyData SV ...
PyData
 
Data Visualization in Health
Data Visualization in Health
Ramon Martinez
 
SharePoint 2010 Web Standards & Accessibility
SharePoint 2010 Web Standards & Accessibility
Mavention
 
Visualized Conference and jQuery Conference
Visualized Conference and jQuery Conference
Keiichiro Ono
 
Ad

Similar to Using Web Standards to create Interactive Data Visualizations for the Web (20)

Html5 more than just html5 v final
Html5 more than just html5 v final
Lohith Goudagere Nagaraj
 
Google web toolkit gwt training
Google web toolkit gwt training
FuturePoint Technologies
 
Benefits of an Open environment with Wakanda
Benefits of an Open environment with Wakanda
Alexandre Morgaut
 
HTML5: An Overview
HTML5: An Overview
Nagendra Um
 
Women Who Code, Ground Floor
Women Who Code, Ground Floor
Katie Weiss
 
S60 3rd FP2 Widgets
S60 3rd FP2 Widgets
romek
 
Frameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic Review
netc2012
 
20120802 timisoara
20120802 timisoara
Richard Rodger
 
Silverlight 5
Silverlight 5
Jeremy Likness
 
Html5 Whats around the bend
Html5 Whats around the bend
Raj Lal
 
GWT HJUG Presentation
GWT HJUG Presentation
Derrick Bowen
 
20120306 dublin js
20120306 dublin js
Richard Rodger
 
6 weeks 6 months live project summer industrial training in cmc limited 2012
6 weeks 6 months live project summer industrial training in cmc limited 2012
CMC Limited
 
Psd 2 Drupal
Psd 2 Drupal
Nicolas Borda
 
jQuery On Rails
jQuery On Rails
Jonathan Sharp
 
Be faster then rabbits
Be faster then rabbits
Vladislav Bauer
 
Dive Into HTML5
Dive Into HTML5
Doris Chen
 
Windows Phone 7 and Windows Azure – A Match Made in the Cloud
Windows Phone 7 and Windows Azure – A Match Made in the Cloud
Michael Collier
 
Wintellect - Devscovery - Enterprise JavaScript Development 2 of 2
Wintellect - Devscovery - Enterprise JavaScript Development 2 of 2
Jeremy Likness
 
Building Rich Internet Apps with Silverlight 2
Building Rich Internet Apps with Silverlight 2
Microsoft Iceland
 
Benefits of an Open environment with Wakanda
Benefits of an Open environment with Wakanda
Alexandre Morgaut
 
HTML5: An Overview
HTML5: An Overview
Nagendra Um
 
Women Who Code, Ground Floor
Women Who Code, Ground Floor
Katie Weiss
 
S60 3rd FP2 Widgets
S60 3rd FP2 Widgets
romek
 
Frameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic Review
netc2012
 
Html5 Whats around the bend
Html5 Whats around the bend
Raj Lal
 
GWT HJUG Presentation
GWT HJUG Presentation
Derrick Bowen
 
6 weeks 6 months live project summer industrial training in cmc limited 2012
6 weeks 6 months live project summer industrial training in cmc limited 2012
CMC Limited
 
Dive Into HTML5
Dive Into HTML5
Doris Chen
 
Windows Phone 7 and Windows Azure – A Match Made in the Cloud
Windows Phone 7 and Windows Azure – A Match Made in the Cloud
Michael Collier
 
Wintellect - Devscovery - Enterprise JavaScript Development 2 of 2
Wintellect - Devscovery - Enterprise JavaScript Development 2 of 2
Jeremy Likness
 
Building Rich Internet Apps with Silverlight 2
Building Rich Internet Apps with Silverlight 2
Microsoft Iceland
 
Ad

More from philogb (18)

OpenVisConf - WebGL for graphics and data visualization
OpenVisConf - WebGL for graphics and data visualization
philogb
 
From Data Journalism to Data Illustration - Visualizing Data with JavaScript ...
From Data Journalism to Data Illustration - Visualizing Data with JavaScript ...
philogb
 
From Data Journalism to Data Illustration - Visualizing Data with JavaScript ...
From Data Journalism to Data Illustration - Visualizing Data with JavaScript ...
philogb
 
The Geography of Tweets - BBC Developer Conference
The Geography of Tweets - BBC Developer Conference
philogb
 
Hacking public-facing data visualizations at Twitter
Hacking public-facing data visualizations at Twitter
philogb
 
#interactives at Twitter
#interactives at Twitter
philogb
 
#interactives at Twitter
#interactives at Twitter
philogb
 
La visualisation de données comme outil pour découvrir et partager des idées ...
La visualisation de données comme outil pour découvrir et partager des idées ...
philogb
 
Exploring Web standards for data visualization
Exploring Web standards for data visualization
philogb
 
JavaScript para Graficos y Visualizacion de Datos - BogotaJS
JavaScript para Graficos y Visualizacion de Datos - BogotaJS
philogb
 
JavaScript para Graficos y Visualizacion de Datos
JavaScript para Graficos y Visualizacion de Datos
philogb
 
InfoVis para la Web: Teoria, Herramientas y Ejemplos.
InfoVis para la Web: Teoria, Herramientas y Ejemplos.
philogb
 
Nuevas herramientas de visualizacion en JavaScript
Nuevas herramientas de visualizacion en JavaScript
philogb
 
Data visualization for the web
Data visualization for the web
philogb
 
Leaving Flatland: Getting Started with WebGL- SXSW 2012
Leaving Flatland: Getting Started with WebGL- SXSW 2012
philogb
 
Principles of Analytical Design - Visually Meetup - Sept. 2011
Principles of Analytical Design - Visually Meetup - Sept. 2011
philogb
 
PhiloGL - WebGLCamp Google HQs - June 2011
PhiloGL - WebGLCamp Google HQs - June 2011
philogb
 
JavaScript InfoVis Toolkit Overview
JavaScript InfoVis Toolkit Overview
philogb
 
OpenVisConf - WebGL for graphics and data visualization
OpenVisConf - WebGL for graphics and data visualization
philogb
 
From Data Journalism to Data Illustration - Visualizing Data with JavaScript ...
From Data Journalism to Data Illustration - Visualizing Data with JavaScript ...
philogb
 
From Data Journalism to Data Illustration - Visualizing Data with JavaScript ...
From Data Journalism to Data Illustration - Visualizing Data with JavaScript ...
philogb
 
The Geography of Tweets - BBC Developer Conference
The Geography of Tweets - BBC Developer Conference
philogb
 
Hacking public-facing data visualizations at Twitter
Hacking public-facing data visualizations at Twitter
philogb
 
#interactives at Twitter
#interactives at Twitter
philogb
 
#interactives at Twitter
#interactives at Twitter
philogb
 
La visualisation de données comme outil pour découvrir et partager des idées ...
La visualisation de données comme outil pour découvrir et partager des idées ...
philogb
 
Exploring Web standards for data visualization
Exploring Web standards for data visualization
philogb
 
JavaScript para Graficos y Visualizacion de Datos - BogotaJS
JavaScript para Graficos y Visualizacion de Datos - BogotaJS
philogb
 
JavaScript para Graficos y Visualizacion de Datos
JavaScript para Graficos y Visualizacion de Datos
philogb
 
InfoVis para la Web: Teoria, Herramientas y Ejemplos.
InfoVis para la Web: Teoria, Herramientas y Ejemplos.
philogb
 
Nuevas herramientas de visualizacion en JavaScript
Nuevas herramientas de visualizacion en JavaScript
philogb
 
Data visualization for the web
Data visualization for the web
philogb
 
Leaving Flatland: Getting Started with WebGL- SXSW 2012
Leaving Flatland: Getting Started with WebGL- SXSW 2012
philogb
 
Principles of Analytical Design - Visually Meetup - Sept. 2011
Principles of Analytical Design - Visually Meetup - Sept. 2011
philogb
 
PhiloGL - WebGLCamp Google HQs - June 2011
PhiloGL - WebGLCamp Google HQs - June 2011
philogb
 
JavaScript InfoVis Toolkit Overview
JavaScript InfoVis Toolkit Overview
philogb
 

Recently uploaded (20)

Aprendendo Arquitetura Framework Salesforce - Dia 02
Aprendendo Arquitetura Framework Salesforce - Dia 02
Mauricio Alexandre Silva
 
SCHIZOPHRENIA OTHER PSYCHOTIC DISORDER LIKE Persistent delusion/Capgras syndr...
SCHIZOPHRENIA OTHER PSYCHOTIC DISORDER LIKE Persistent delusion/Capgras syndr...
parmarjuli1412
 
ECONOMICS, DISASTER MANAGEMENT, ROAD SAFETY - STUDY MATERIAL [10TH]
ECONOMICS, DISASTER MANAGEMENT, ROAD SAFETY - STUDY MATERIAL [10TH]
SHERAZ AHMAD LONE
 
IIT KGP Quiz Week 2024 Sports Quiz (Prelims + Finals)
IIT KGP Quiz Week 2024 Sports Quiz (Prelims + Finals)
IIT Kharagpur Quiz Club
 
Sustainable Innovation with Immersive Learning
Sustainable Innovation with Immersive Learning
Leonel Morgado
 
THE PSYCHOANALYTIC OF THE BLACK CAT BY EDGAR ALLAN POE (1).pdf
THE PSYCHOANALYTIC OF THE BLACK CAT BY EDGAR ALLAN POE (1).pdf
nabilahk908
 
Birnagar High School Platinum Jubilee Quiz.pptx
Birnagar High School Platinum Jubilee Quiz.pptx
Sourav Kr Podder
 
NSUMD_M1 Library Orientation_June 11, 2025.pptx
NSUMD_M1 Library Orientation_June 11, 2025.pptx
Julie Sarpy
 
Peer Teaching Observations During School Internship
Peer Teaching Observations During School Internship
AjayaMohanty7
 
YSPH VMOC Special Report - Measles Outbreak Southwest US 6-14-2025.pptx
YSPH VMOC Special Report - Measles Outbreak Southwest US 6-14-2025.pptx
Yale School of Public Health - The Virtual Medical Operations Center (VMOC)
 
Paper 108 | Thoreau’s Influence on Gandhi: The Evolution of Civil Disobedience
Paper 108 | Thoreau’s Influence on Gandhi: The Evolution of Civil Disobedience
Rajdeep Bavaliya
 
ENGLISH_Q1_W1 PowerPoint grade 3 quarter 1 week 1
ENGLISH_Q1_W1 PowerPoint grade 3 quarter 1 week 1
jutaydeonne
 
Code Profiling in Odoo 18 - Odoo 18 Slides
Code Profiling in Odoo 18 - Odoo 18 Slides
Celine George
 
LDMMIA Yoga S10 Free Workshop Grad Level
LDMMIA Yoga S10 Free Workshop Grad Level
LDM & Mia eStudios
 
Chalukyas of Gujrat, Solanki Dynasty NEP.pptx
Chalukyas of Gujrat, Solanki Dynasty NEP.pptx
Dr. Ravi Shankar Arya Mahila P. G. College, Banaras Hindu University, Varanasi, India.
 
Photo chemistry Power Point Presentation
Photo chemistry Power Point Presentation
mprpgcwa2024
 
This is why students from these 44 institutions have not received National Se...
This is why students from these 44 institutions have not received National Se...
Kweku Zurek
 
Romanticism in Love and Sacrifice An Analysis of Oscar Wilde’s The Nightingal...
Romanticism in Love and Sacrifice An Analysis of Oscar Wilde’s The Nightingal...
KaryanaTantri21
 
Great Governors' Send-Off Quiz 2025 Prelims IIT KGP
Great Governors' Send-Off Quiz 2025 Prelims IIT KGP
IIT Kharagpur Quiz Club
 
HistoPathology Ppt. Arshita Gupta for Diploma
HistoPathology Ppt. Arshita Gupta for Diploma
arshitagupta674
 
Aprendendo Arquitetura Framework Salesforce - Dia 02
Aprendendo Arquitetura Framework Salesforce - Dia 02
Mauricio Alexandre Silva
 
SCHIZOPHRENIA OTHER PSYCHOTIC DISORDER LIKE Persistent delusion/Capgras syndr...
SCHIZOPHRENIA OTHER PSYCHOTIC DISORDER LIKE Persistent delusion/Capgras syndr...
parmarjuli1412
 
ECONOMICS, DISASTER MANAGEMENT, ROAD SAFETY - STUDY MATERIAL [10TH]
ECONOMICS, DISASTER MANAGEMENT, ROAD SAFETY - STUDY MATERIAL [10TH]
SHERAZ AHMAD LONE
 
IIT KGP Quiz Week 2024 Sports Quiz (Prelims + Finals)
IIT KGP Quiz Week 2024 Sports Quiz (Prelims + Finals)
IIT Kharagpur Quiz Club
 
Sustainable Innovation with Immersive Learning
Sustainable Innovation with Immersive Learning
Leonel Morgado
 
THE PSYCHOANALYTIC OF THE BLACK CAT BY EDGAR ALLAN POE (1).pdf
THE PSYCHOANALYTIC OF THE BLACK CAT BY EDGAR ALLAN POE (1).pdf
nabilahk908
 
Birnagar High School Platinum Jubilee Quiz.pptx
Birnagar High School Platinum Jubilee Quiz.pptx
Sourav Kr Podder
 
NSUMD_M1 Library Orientation_June 11, 2025.pptx
NSUMD_M1 Library Orientation_June 11, 2025.pptx
Julie Sarpy
 
Peer Teaching Observations During School Internship
Peer Teaching Observations During School Internship
AjayaMohanty7
 
Paper 108 | Thoreau’s Influence on Gandhi: The Evolution of Civil Disobedience
Paper 108 | Thoreau’s Influence on Gandhi: The Evolution of Civil Disobedience
Rajdeep Bavaliya
 
ENGLISH_Q1_W1 PowerPoint grade 3 quarter 1 week 1
ENGLISH_Q1_W1 PowerPoint grade 3 quarter 1 week 1
jutaydeonne
 
Code Profiling in Odoo 18 - Odoo 18 Slides
Code Profiling in Odoo 18 - Odoo 18 Slides
Celine George
 
LDMMIA Yoga S10 Free Workshop Grad Level
LDMMIA Yoga S10 Free Workshop Grad Level
LDM & Mia eStudios
 
Photo chemistry Power Point Presentation
Photo chemistry Power Point Presentation
mprpgcwa2024
 
This is why students from these 44 institutions have not received National Se...
This is why students from these 44 institutions have not received National Se...
Kweku Zurek
 
Romanticism in Love and Sacrifice An Analysis of Oscar Wilde’s The Nightingal...
Romanticism in Love and Sacrifice An Analysis of Oscar Wilde’s The Nightingal...
KaryanaTantri21
 
Great Governors' Send-Off Quiz 2025 Prelims IIT KGP
Great Governors' Send-Off Quiz 2025 Prelims IIT KGP
IIT Kharagpur Quiz Club
 
HistoPathology Ppt. Arshita Gupta for Diploma
HistoPathology Ppt. Arshita Gupta for Diploma
arshitagupta674
 

Using Web Standards to create Interactive Data Visualizations for the Web

  • 1. Using Web Standards to create Interactive Data Visualizations for the Web Nicolas Garcia Belmonte - Dec. 2009
  • 2. Agenda • JavaScript InfoVis Toolkit Overview • Web Standards, JavaScript and Graphics • What’s next for the JIT (v. 1.2) • What’s next for Web Standards (WebGL) • Introducing V8-GL
  • 3. JavaScript InfoVis Toolkit • Web Based Interactive Data Visualizations • Multiple Graph/Tree Layouts • Modular, Extensible, Composable • Web Standards Based
  • 5. Modular Grab only what you need HyperTree SunBurst TreeMap JavaScript InfoVis ForceDirected Toolkit RGraph Icicle SpaceTree
  • 6. Extensible • Define custom Nodes and Edges • Add Custom Animations (linear, Elastic, etc.)
  • 7. Composable Add Visualizations as Node/Edge rendering functions to other visualizations
  • 9. Web Standards JavaScript • Dynamic, Expressive, Powerful • Support in all Browsers • Large Community
  • 10. Web Standards JavaScript: Language Features • Dynamic • Weakly typed • Differential Inheritance • First-class Functions • Object Mutability • Booleans as Defaults • etc.
  • 11. Web Standards JavaScript: 100% Faster SunSpider runs per minute 65.00 48.75 32.50 16.25 0 WebKit 3.0 WebKit 3.1 SquirrelFish SquirrelFish X Source: http://webkit.org/blog/214/introducing-squirrelfish-extreme/
  • 12. Web Standards Everybody wants to make JavaScript Faster • Apple Safari - SquirrelFish Extreme • Mozilla Firefox - TraceMonkey • Google Chrome - V8 • Opera - Carakan
  • 13. Web Standards HTML Document
  • 14. Web Standards HTML5 Header • Audio Nav • Video Form • Drag n Drop Section • Canvas Image • Storage Footer • etc.
  • 15. Web Standards CSS3 Header • Gradients Nav • Text Effects Section Form • Transforms Image • Animations • etc. Footer
  • 17. Canvas Initialization <canvas id=”tutorial” width=500 height=500></canvas> var canvas = document.getElementById(“tutorial”); var ctx = canvas.getContext(“2d”);
  • 18. Canvas Drawing Shapes ctx.fillStyle = “rgb(200, 0, 0)”; ctx.fillRect(10, 10, 55, 50); ctx.fillStyle = “rgba(0, 0, 200, 0.5)”; ctx.fillRect(30, 30, 55, 50);
  • 19. Canvas Benefits Weak Points Good Performance No notion of elements Simple API Code gets too verbose
  • 20. Why JS + Canvas? • Native Browser Technologies • Seamless Integration • High Interoperability • No third-party libraries • Access to a large community
  • 21. JavaScript InfoVis Toolkit Applications Visualizing Linux Package Dependencies Source: http://demos.thejit.org/example/rgraph/example1/
  • 22. JavaScript InfoVis Toolkit Applications Visualizing Artist-Band Relationships Source: http://demos.thejit.org/example/hypertree/example1/
  • 23. JavaScript InfoVis Toolkit Applications Some (public) user Applications CRS Management UI ROOT project at CERN Project at Macalester College Game Stats at Dystopia Neural Network Visualization
  • 24. What’s next for the JIT? Version 1.2 • SunBurst, Icicle and Force-Directed Visualizations • Mouse Controlled Transforms • And more...
  • 25. What’s next for the Web? WebGL Already available in WebKit and Firefox nightlies (*)
  • 26. V8-GL Write Hardware Accelerated Desktop Graphics with JS http://github.com/philogb/v8-gl/
  • 27. Questions? [email protected] http://blog.thejit.org http://github.com/philogb http://thejit.org