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

More Related Content

PDF
HTML5 and the dawn of rich mobile web applications pt 1
PPTX
What is HTML 5?
PDF
How to Develop a Rich, Native-quality User Experience for Mobile Using Web St...
PPTX
JavaScript front end performance optimizations
KEY
Thats Not Flash?
PPTX
Develop a vanilla.js spa you and your customers will love
KEY
Flash And Dom
PPTX
Advanced front end debugging with ms edge and ms tools
HTML5 and the dawn of rich mobile web applications pt 1
What is HTML 5?
How to Develop a Rich, Native-quality User Experience for Mobile Using Web St...
JavaScript front end performance optimizations
Thats Not Flash?
Develop a vanilla.js spa you and your customers will love
Flash And Dom
Advanced front end debugging with ms edge and ms tools

What's hot (20)

PPTX
Service workers your applications never felt so good
PDF
Progressive Enhancement 2.0 (Conference Agnostic)
PDF
Thinking in Components
PDF
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
PDF
Great Responsive-ability Web Design
PPTX
Browser Wars Episode 1: The Phantom Menace
PPTX
Enough with the JavaScript already!
PPTX
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
KEY
Developing High Performance Web Apps - CodeMash 2011
PPTX
Html5 Overview
PDF
Mobile Web Speed Bumps
PDF
Don't make me wait! or Building High-Performance Web Applications
PDF
Responsive Websites and Grid-Based Layouts by Gabriel Walt
PPTX
High Performance JavaScript (CapitolJS 2011)
PDF
HTML5 and CSS3: does now really mean now?
KEY
WHAT IS HTML5? (at CSS Nite Osaka)
PPTX
Html5 Fit: Get Rid of Love Handles
PDF
jQuery 1.9 and 2.0 - Present and Future
KEY
Video.js - How to build and HTML5 Video Player
PDF
Web Apps and more
Service workers your applications never felt so good
Progressive Enhancement 2.0 (Conference Agnostic)
Thinking in Components
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Great Responsive-ability Web Design
Browser Wars Episode 1: The Phantom Menace
Enough with the JavaScript already!
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
Developing High Performance Web Apps - CodeMash 2011
Html5 Overview
Mobile Web Speed Bumps
Don't make me wait! or Building High-Performance Web Applications
Responsive Websites and Grid-Based Layouts by Gabriel Walt
High Performance JavaScript (CapitolJS 2011)
HTML5 and CSS3: does now really mean now?
WHAT IS HTML5? (at CSS Nite Osaka)
Html5 Fit: Get Rid of Love Handles
jQuery 1.9 and 2.0 - Present and Future
Video.js - How to build and HTML5 Video Player
Web Apps and more
Ad

Viewers also liked (14)

PPTX
Web standards and Visual Studio web tools
PDF
Una web todos los dispositivos.
PDF
Social data visualization
PPTX
Advanced Visualizations
PDF
Data visualization in JavaScript
PDF
New Tools for Visualization in JavaScript - Sept. 2011
PDF
JavaScript InfoVis Toolkit - Create interactive data visualizations for the web
PDF
Creating Interactive Data Visualizations for the Web - YOW! Developer Confere...
PDF
SUPPORT CRED
PDF
2016-09-28 Are You ADA Compliant? Ensuring Your Website is Accessible to Peop...
PDF
Up and Down the Python Data & Web Visualization Stack by Rob Story PyData SV ...
PPTX
Data Visualization in Health
PPTX
SharePoint 2010 Web Standards & Accessibility
PDF
Visualized Conference and jQuery Conference
Web standards and Visual Studio web tools
Una web todos los dispositivos.
Social data visualization
Advanced Visualizations
Data visualization in JavaScript
New Tools for Visualization in JavaScript - Sept. 2011
JavaScript InfoVis Toolkit - Create interactive data visualizations for the web
Creating Interactive Data Visualizations for the Web - YOW! Developer Confere...
SUPPORT CRED
2016-09-28 Are You ADA Compliant? Ensuring Your Website is Accessible to Peop...
Up and Down the Python Data & Web Visualization Stack by Rob Story PyData SV ...
Data Visualization in Health
SharePoint 2010 Web Standards & Accessibility
Visualized Conference and jQuery Conference
Ad

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

PDF
WDE08 State of the web
PDF
Building a Better Web with HTML5 and CSS3
PPTX
Toronto HTML5 User Group Meet Up #2 – Application Development with HTML 5
PDF
soft-shake.ch - Introduction to HTML5
PPTX
HTML5 - Chances and Pitfalls (Bytro Labs GmbH)
PDF
JavaONE 2012 Using Java with HTML5 and CSS3
PDF
Open web platform talk by daniel hladky at rif 2012 (19 april 2012 moscow)
PPTX
PPTX
Html5 more than just html5 v final
PDF
Jsf2 html5-jazoon
PDF
Rapid Evolution of Web Dev? aka Talking About The Web
PPTX
HTML5 - A Whirlwind tour
KEY
HTML5 History & Features
PDF
From Flash to Canvas - a penchant for black holes
PDF
New Features Coming in Browsers (RIT '09)
PDF
HTML5 Intoduction for Web Developers
PDF
HTML5/CSS3 and Future Web in Mobile and IPTV
PDF
Change by HTML5
PDF
IE9 - "the good, the bad, the ugly"
PDF
W3C HTML5 KIG-The complete guide to building html5 games
WDE08 State of the web
Building a Better Web with HTML5 and CSS3
Toronto HTML5 User Group Meet Up #2 – Application Development with HTML 5
soft-shake.ch - Introduction to HTML5
HTML5 - Chances and Pitfalls (Bytro Labs GmbH)
JavaONE 2012 Using Java with HTML5 and CSS3
Open web platform talk by daniel hladky at rif 2012 (19 april 2012 moscow)
Html5 more than just html5 v final
Jsf2 html5-jazoon
Rapid Evolution of Web Dev? aka Talking About The Web
HTML5 - A Whirlwind tour
HTML5 History & Features
From Flash to Canvas - a penchant for black holes
New Features Coming in Browsers (RIT '09)
HTML5 Intoduction for Web Developers
HTML5/CSS3 and Future Web in Mobile and IPTV
Change by HTML5
IE9 - "the good, the bad, the ugly"
W3C HTML5 KIG-The complete guide to building html5 games

More from philogb (18)

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

Recently uploaded (20)

PPTX
How to Manage Starshipit in Odoo 18 - Odoo Slides
PDF
Insiders guide to clinical Medicine.pdf
PPTX
NOI Hackathon - Summer Edition - GreenThumber.pptx
DOCX
UPPER GASTRO INTESTINAL DISORDER.docx
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PPTX
Revamp in MTO Odoo 18 Inventory - Odoo Slides
PDF
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PDF
From loneliness to social connection charting
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PDF
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
PPTX
Pharma ospi slides which help in ospi learning
PPTX
Onica Farming 24rsclub profitable farm business
PPTX
Week 4 Term 3 Study Techniques revisited.pptx
PPTX
Cardiovascular Pharmacology for pharmacy students.pptx
PDF
Business Ethics Teaching Materials for college
How to Manage Starshipit in Odoo 18 - Odoo Slides
Insiders guide to clinical Medicine.pdf
NOI Hackathon - Summer Edition - GreenThumber.pptx
UPPER GASTRO INTESTINAL DISORDER.docx
O5-L3 Freight Transport Ops (International) V1.pdf
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
Renaissance Architecture: A Journey from Faith to Humanism
Revamp in MTO Odoo 18 Inventory - Odoo Slides
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
Pharmacology of Heart Failure /Pharmacotherapy of CHF
From loneliness to social connection charting
Abdominal Access Techniques with Prof. Dr. R K Mishra
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
Pharma ospi slides which help in ospi learning
Onica Farming 24rsclub profitable farm business
Week 4 Term 3 Study Techniques revisited.pptx
Cardiovascular Pharmacology for pharmacy students.pptx
Business Ethics Teaching Materials for college

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