SlideShare a Scribd company logo
Data Vizualisation
                  hello world with:

                  d3.js + sinatra +
                   elasticsearch

mardi 6 mars 12
hello world :)


                  • know this sexy technos exist...
                  • ... and maybe learn more after ;)


mardi 6 mars 12
d3.js
                  • http://mbostock.github.com/d3/
                  • «D3.js is a small, free JavaScript library for
                    manipulating documents based on data.»




mardi 6 mars 12
d3.js
                  • data([4, 8, 15, 16, 23, 42])
                  • array of document elements (<p>)
                  • data[i] <=> elements[i] -> each element of
                    the data array is binded to an element of
                    the document




mardi 6 mars 12
d3.js
                  • #repeat : each element of the data array is
                    binded to an element of the document
                  • foreach item of my data array:
                  • .enter().append("p").text(function(d)
                    { return "I'm number " + d + "!"; });
                  • i build a <p> el and set a text with the data
                    value


mardi 6 mars 12
d3.js
                  • circle.exit().remove();
                  • when data element is removed, i just the
                      remove the same index element from the
                      dom
                  • if data data value is updated ? transition +
                      svg!
                  •    rect.transition().duration(1000).attr("x",
                      function(d, i) { return x(i) - .5; });

mardi 6 mars 12
d3.js


                  • more d3.js pres is possible: just ask for it ;)



mardi 6 mars 12
sinatra


                  • http://www.sinatrarb.com/
                  • « Sinatra is a DSL for quickly creating web
                    applications in Ruby with minimal effort »




mardi 6 mars 12
sinatra
                  • quick web application without persistence
                    and so on (but you can too ;))
                  • data viz with static js / css / html
                  • proxy to api (here we have a proxy to the
                    elastic search api)
                  • make call to facebook / oauth api and get
                    token for debug....
                  • etc....
mardi 6 mars 12
elasticsearch
                  • http://www.elasticsearch.org/
                  • fast
                  • painless setup
                  • free search schema
                  • JSON over http
                  • scale to hundreds
mardi 6 mars 12
elasticsearch
                  • put json on the index
                  • search index
                  • response times are indcrebly fast
                  • super easy clustering (sharding +
                    replication)
                  • and requested by REST / json api
mardi 6 mars 12
elasticsearch


                  • more elasticsearch pres is possible: just ask
                    for it ;)




mardi 6 mars 12
the app
              js
             d3.js        sinatra           elasticsearch

             ajax

       javascript
                       sinatra really
     contain main                       elasticsearch
                         handy for
      part of app                       accessed via
                       proxying with
    vizualiation and                         http
                         REST api
     http querying
mardi 6 mars 12
video


                  • check !



mardi 6 mars 12
Matt


                  • twitter @mathieuel
                  • http://www.mathieu-elie.net


mardi 6 mars 12

More Related Content

PDF
dataviz on d3.js + elasticsearch
KEY
Elasticsearch & "PeopleSearch"
PDF
Elasticsearch first-steps
KEY
An Evening with MongoDB - Orlando: Welcome and Keynote
PPTX
Scaling Analytics with elasticsearch
PDF
elasticsearch basics workshop
PDF
Dan Sullivan - Data Analytics and Text Mining with MongoDB - NoSQL matters Du...
PDF
Using elasticsearch with rails
dataviz on d3.js + elasticsearch
Elasticsearch & "PeopleSearch"
Elasticsearch first-steps
An Evening with MongoDB - Orlando: Welcome and Keynote
Scaling Analytics with elasticsearch
elasticsearch basics workshop
Dan Sullivan - Data Analytics and Text Mining with MongoDB - NoSQL matters Du...
Using elasticsearch with rails

What's hot (20)

PDF
When big data meet python @ COSCUP 2012
PPTX
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow Zurich
PPTX
Graph Databases
PPTX
MongoDB + Spring
ODP
Dataspace presentatie
PPTX
473_LightningTalks.pptx
PPTX
Mongo db – document oriented database
PPTX
Common MongoDB Use Cases
PPTX
Big Data Overview Part 1
PPT
MongoDB at the Silicon Valley iPhone and iPad Developers' Meetup
PDF
Design of Experiments on Federator Polystore Architecture
PPTX
Introducción a NoSQL
PDF
Elastify you application: from SQL to NoSQL in less than one hour!
PPTX
Research Automation for Data-Driven Discovery
PDF
MongoDB World 2016: Poster Sessions eBook
PPTX
Big Data Analytics 3: Machine Learning to Engage the Customer, with Apache Sp...
PDF
SQL vs NoSQL, an experiment with MongoDB
PDF
MongoDB Basics
ODP
Реляционные или нереляционные (Josh Berkus)
PPTX
MongoDB & Hadoop - Understanding Your Big Data
When big data meet python @ COSCUP 2012
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow Zurich
Graph Databases
MongoDB + Spring
Dataspace presentatie
473_LightningTalks.pptx
Mongo db – document oriented database
Common MongoDB Use Cases
Big Data Overview Part 1
MongoDB at the Silicon Valley iPhone and iPad Developers' Meetup
Design of Experiments on Federator Polystore Architecture
Introducción a NoSQL
Elastify you application: from SQL to NoSQL in less than one hour!
Research Automation for Data-Driven Discovery
MongoDB World 2016: Poster Sessions eBook
Big Data Analytics 3: Machine Learning to Engage the Customer, with Apache Sp...
SQL vs NoSQL, an experiment with MongoDB
MongoDB Basics
Реляционные или нереляционные (Josh Berkus)
MongoDB & Hadoop - Understanding Your Big Data
Ad

Viewers also liked (20)

PPT
Accenture Technology Vision for Oracle 2014
PDF
D3.js 30-minute intro
PDF
THE DATA DRIVEN WEB OF NOW: EXTENDING D3JS (Travis Smith)
PDF
Introduction to Data Science - ESCP Europe
PPTX
Building Native Android Apps with JavaScript
PDF
SquidFlow: Building a D3.js sankey app
PPT
Spring + JPA + DAO Step by Step
PPTX
Intelligent Infrastructures: Unlocking the Digital Business
PDF
For the CISO: Continuous Cyber Attacks - Achieving Operational Excellence for...
PDF
Microservices - java ee vs spring boot and spring cloud
PDF
Microservices with Spring Boot
PDF
Elasticsearch for Data Analytics
PPT
Java Persistence API (JPA) Step By Step
PPTX
Accenture Technology Vision 2016. Focus on Pega® Technology.
PPTX
Building Digital Trust : The role of data ethics in the digital age
PDF
Staking a claim in the Platform Economy with SAP
PPTX
Intelligent Automation - 3 Lessons Learned
PPTX
Accenture DevOps: Delivering applications at the pace of business
PDF
Predictable Disruption - Tech Vision 2016 Trend 4
PPTX
AI and the Future of Growth
Accenture Technology Vision for Oracle 2014
D3.js 30-minute intro
THE DATA DRIVEN WEB OF NOW: EXTENDING D3JS (Travis Smith)
Introduction to Data Science - ESCP Europe
Building Native Android Apps with JavaScript
SquidFlow: Building a D3.js sankey app
Spring + JPA + DAO Step by Step
Intelligent Infrastructures: Unlocking the Digital Business
For the CISO: Continuous Cyber Attacks - Achieving Operational Excellence for...
Microservices - java ee vs spring boot and spring cloud
Microservices with Spring Boot
Elasticsearch for Data Analytics
Java Persistence API (JPA) Step By Step
Accenture Technology Vision 2016. Focus on Pega® Technology.
Building Digital Trust : The role of data ethics in the digital age
Staking a claim in the Platform Economy with SAP
Intelligent Automation - 3 Lessons Learned
Accenture DevOps: Delivering applications at the pace of business
Predictable Disruption - Tech Vision 2016 Trend 4
AI and the Future of Growth
Ad

Similar to Appli légère avec d3.js, sinatra, elasticsearch et capucine (20)

PPT
Data vizualisation: d3.js + sinatra + elasticsearch
PPT
Data Visualizations with D3
PPTX
SVCC 2013 D3.js Presentation (10/05/2013)
PPTX
Svcc 2013-d3
PDF
Learning d3
PDF
Improving D3 Performance with CANVAS and other Hacks
PDF
Learn D3.js in 90 minutes
PPTX
6 10-presentation
PPTX
SVGD3Angular2React
PDF
Data visualization with d3 may19
PDF
Mongo db washington dc 2014
PDF
D3.js: Data Visualization for the Web
PDF
D3.js capita selecta
PDF
LA Ember.js Meetup, Jan 2017
PPTX
D3 & MeteorJS
PPTX
D3 & MeteorJS
PDF
Document relations
PDF
Introduction to d3js (and SVG)
PDF
d3 is cool
KEY
An in-depth look at jQuery
Data vizualisation: d3.js + sinatra + elasticsearch
Data Visualizations with D3
SVCC 2013 D3.js Presentation (10/05/2013)
Svcc 2013-d3
Learning d3
Improving D3 Performance with CANVAS and other Hacks
Learn D3.js in 90 minutes
6 10-presentation
SVGD3Angular2React
Data visualization with d3 may19
Mongo db washington dc 2014
D3.js: Data Visualization for the Web
D3.js capita selecta
LA Ember.js Meetup, Jan 2017
D3 & MeteorJS
D3 & MeteorJS
Document relations
Introduction to d3js (and SVG)
d3 is cool
An in-depth look at jQuery

Recently uploaded (20)

PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Encapsulation theory and applications.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Electronic commerce courselecture one. Pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Cloud computing and distributed systems.
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
KodekX | Application Modernization Development
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
Chapter 3 Spatial Domain Image Processing.pdf
NewMind AI Weekly Chronicles - August'25 Week I
The Rise and Fall of 3GPP – Time for a Sabbatical?
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Encapsulation theory and applications.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Electronic commerce courselecture one. Pdf
Review of recent advances in non-invasive hemoglobin estimation
Cloud computing and distributed systems.
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
KodekX | Application Modernization Development
MIND Revenue Release Quarter 2 2025 Press Release
MYSQL Presentation for SQL database connectivity
Mobile App Security Testing_ A Comprehensive Guide.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
The AUB Centre for AI in Media Proposal.docx
Per capita expenditure prediction using model stacking based on satellite ima...
Understanding_Digital_Forensics_Presentation.pptx
Reach Out and Touch Someone: Haptics and Empathic Computing

Appli légère avec d3.js, sinatra, elasticsearch et capucine

  • 1. Data Vizualisation hello world with: d3.js + sinatra + elasticsearch mardi 6 mars 12
  • 2. hello world :) • know this sexy technos exist... • ... and maybe learn more after ;) mardi 6 mars 12
  • 3. d3.js • http://mbostock.github.com/d3/ • «D3.js is a small, free JavaScript library for manipulating documents based on data.» mardi 6 mars 12
  • 4. d3.js • data([4, 8, 15, 16, 23, 42]) • array of document elements (<p>) • data[i] <=> elements[i] -> each element of the data array is binded to an element of the document mardi 6 mars 12
  • 5. d3.js • #repeat : each element of the data array is binded to an element of the document • foreach item of my data array: • .enter().append("p").text(function(d) { return "I'm number " + d + "!"; }); • i build a <p> el and set a text with the data value mardi 6 mars 12
  • 6. d3.js • circle.exit().remove(); • when data element is removed, i just the remove the same index element from the dom • if data data value is updated ? transition + svg! • rect.transition().duration(1000).attr("x", function(d, i) { return x(i) - .5; }); mardi 6 mars 12
  • 7. d3.js • more d3.js pres is possible: just ask for it ;) mardi 6 mars 12
  • 8. sinatra • http://www.sinatrarb.com/ • « Sinatra is a DSL for quickly creating web applications in Ruby with minimal effort » mardi 6 mars 12
  • 9. sinatra • quick web application without persistence and so on (but you can too ;)) • data viz with static js / css / html • proxy to api (here we have a proxy to the elastic search api) • make call to facebook / oauth api and get token for debug.... • etc.... mardi 6 mars 12
  • 10. elasticsearch • http://www.elasticsearch.org/ • fast • painless setup • free search schema • JSON over http • scale to hundreds mardi 6 mars 12
  • 11. elasticsearch • put json on the index • search index • response times are indcrebly fast • super easy clustering (sharding + replication) • and requested by REST / json api mardi 6 mars 12
  • 12. elasticsearch • more elasticsearch pres is possible: just ask for it ;) mardi 6 mars 12
  • 13. the app js d3.js sinatra elasticsearch ajax javascript sinatra really contain main elasticsearch handy for part of app accessed via proxying with vizualiation and http REST api http querying mardi 6 mars 12
  • 14. video • check ! mardi 6 mars 12
  • 15. Matt • twitter @mathieuel • http://www.mathieu-elie.net mardi 6 mars 12