SlideShare a Scribd company logo
1 of 33
Download to read offline
About data visualization


 Datavisualization is the science of
 visual representation of data.
About data visualization


 Representing  large amounts of disparate
 information in a visual form often allows
 you to see patterns that would otherwise
 be buried in vast, unconnected data sets.
About data visualization


 The effectiveness in conveying ideas
 is achieved by combining both
 aesthetics and functionality.
What the Web brings into data visualization
 Generation and storage of massive
  and growing amounts of data.
What the Web brings into data visualization
 Generation   and storage of massive
  and growing amounts of data.
 A means to create and share many
  kinds of visualizations
What the Web brings into data visualization
 Generation   and storage of massive
  and growing amounts of data.
 A means to create and share many
  kinds of visualizations
 Unprecedented access to data
What the Web brings into data visualization
 Generation   and storage of massive
  and growing amounts of data.
 A means to create and share many
  kinds of visualizations
 Unprecedented access to data
 Animations and user interactions
Social data
 A bigpart of the content available
  on the web is created by the users.
Social data
 A big part of the content available
  on the web is created by the users.
 This represents the largest amount
  of data on the Web that needs to be
  processed and visualized.
Social data
 A big part of the content available
  on the web is created by the users.
 This represents the largest amount
  of data on the Web that needs to be
  processed and visualized.
 Important derivative information
  may surface from creative ways of
  exploiting this data.
Using JavaScript libraries for
data visualization
 Anyoneaccessing the Web has a browser
 and every browser supports JavaScript.
Using JavaScript libraries for
 data visualization
 Anyone    accessing the Web has a browser
  and every browser supports JavaScript.
 JavaScript - very powerful tool to develop
  client-side web applications, especially
  those that require user interaction.
Using JavaScript libraries for
 data visualization
 Anyone    accessing the Web has a browser
  and every browser supports JavaScript.
 JavaScript - very powerful tool to develop
  client-side web applications, especially
  those that require user interaction.
 Therefore JavaScript libraries for data
  visualization would hold an incredibly big
  advantage over any other tool used with
  the same purpose.
Using JavaScript libraries for
data visualization


 16 Javascript Libraries for Visualizations
 We have chosen to focus on
  Processing.js and Raphaël
Processing.js

 Makes Processing code run in a webpage.
 Makes use of the HTML5 canvas.
 How    to use Processing.js
   Write pure Processing code
   Write pure JavaScript code
   Combine Processing with JavaScript
Raphaël


 JavaScript  library that simplifies work
  with vector graphics on the web.
 Uses SVG and VML
 Extension   for charts: gRaphaël
Processing.js and Raphaël - Comparison
 Drawing
   Canvas vs. SVG
   Raster vs. Vectorial
Processing.js and Raphaël - Comparison
 Drawing
   Canvas vs. SVG
   Raster vs. Vectorial

 Coding
   Java + JavaScript vs. only JavaScript
Processing.js and Raphaël - Comparison
 Drawing
   Canvas vs. SVG
   Raster vs. Vectorial

 Coding
   Java + JavaScript vs. only JavaScript

 Speed
   if a single element is changed
    ○ Raphael can update only that
    ○ Processing must refresh the entire scene
   if the window is rescaled
    ○ Raphael does nothing and the image maintains its quality
    ○ Processing must generate the entire scene again
Processing.js and Raphaël - Comparison
 Functionality
   Processing.js has many features inherited from
    Processing. This allows the user to create very
    complex drawings.
   Raphael has a good reference, but not that large as
    Processing. Although for simple to more complex
    tasks it has many features.
Processing.js and Raphaël - Comparison
 Functionality
   Processing.js has many features inherited from
    Processing. This allows the user to create very
    complex drawings.
   Raphael has a good reference, but not that large as
    Processing. Although for simple to more complex
    tasks it has many features.
 Documentation
   Both frameworks have a well-documented
    reference with examples and drawings
Case studies
 Social data to use - what Twitter
  provides through its API
Case studies
 Social data to use - what Twitter
  provides through its API
 Idea: a small application that takes
  tweets from various Twitter accounts
  and displays them in a chart.
Case studies
 Social data to use - what Twitter
  provides through its API
 Idea: a small application that takes
  tweets from various Twitter accounts
  and displays them in a chart.
 This chart shows how many tweets
  were posted in every day of the week
  for every user.
Case studies
 Social data to use - what Twitter
  provides through its API
 Idea: a small application that takes
  tweets from various Twitter accounts
  and displays them in a chart.
 This chart shows how many tweets
  were posted in every day of the week
  for every user.
 See our video demo, which shows
  how the two applications work
Case study for Processing.js
Application demo | Source code




            What the chart looks like for various entries
Case study for Processing.js
Application demo | Source code

//Draws weekday labels
for(int i=0; i<days.length; i++)
{
        textAlign(CENTER);
        text(days[i], startX + i * (maxRadius + distance * 2) +
        (maxRadius + distance * 2)/2,        startY - 15);
}


//Linear scaling transform of number of tweets into circle radius
float rad = (stats[i]-minTweets)/(maxTweets-minTweets) *
       (maxRadius-minRadius) + minRadius;
//Compute position and draw circle
int x = startX + (maxRadius + distance * 2)/2 +
       (maxRadius + distance * 2) * i;
int y = startY + (maxRadius + distance * 2)/2 +
       (maxRadius + distance * 2) * index;
ellipse( x, y, rad, rad );
Case study for Raphaël
Application demo | Source code




            What the chart looks like for various entries
Case study for Raphaël
Application demo | Source code


paper = Raphael("canvas", 900, 400);

paper.text(x, y, text)

/* To resize the text, another call is used but is chained to
the previous one like this:
*/
attr = {font: "12px Helvetica", opacity: 1};
paper.text(x, y, text).attr(attr);

var circle = paper.ellipse(x, y, rad, rad);

circle.attr("fill", "#123214");
circle.attr("stroke", "#fff");
Conclusions
 Both  Processing.js and Raphaël have
  their advantages and disadvantages.
 we have concluded that the choice
  between the two highly depends on the
  type of project you want to develop and
  your previous experience with JavaScript
 In the end, it all comes down to the needs
  of the developer.
References
1.   Educase Learning Initiative, "7 things you should know
     about Data Visualization", October 2007
2.   Michael Friendly, "Milestones in the history of thematic
     cartography, statistical graphics, and data visualization",
     August 24, 2009
3.   Vitaly Friedman, "Data Visualization and Infographics", in:
     Graphics, Monday Inspiration, January 14th, 2008.
4.   Fernanda Viegas and Martin Wattenberg, "How To Make
     Data Look Sexy", CNN.com, April 19, 2011.
5.   Benjamin Wiederkehr, 16 Javascript Libraries for
     Visualizations, July 29, 2009
6.   Processing.js – Learning
7.   Processing.js Quick Start - JavaScript Developer Edition
8.   Pomax's guide to Processing.js
9.   Raphael documentation
Authors
    CristinaŞerban, I3B2
    Adrian Dumitru Popovici, I3B1
{cristina.serban, popovici.adrian}info.uaic.ro

    Faculty of Computer Science,
Univeristy Alexandru Ioan Cuza of Iaşi

More Related Content

Similar to Social data visualization

DSL (Domain Specific Language) for Maps Mashups
DSL (Domain Specific Language) for Maps MashupsDSL (Domain Specific Language) for Maps Mashups
DSL (Domain Specific Language) for Maps Mashups
aliraza786
 
The Recent Pronouncement Of The World Wide Web (Www) Had
The Recent Pronouncement Of The World Wide Web (Www) HadThe Recent Pronouncement Of The World Wide Web (Www) Had
The Recent Pronouncement Of The World Wide Web (Www) Had
Deborah Gastineau
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Chris Love
 

Similar to Social data visualization (20)

Overview of tools for data analysis and visualisation (2021)
Overview of tools for data analysis and visualisation (2021)Overview of tools for data analysis and visualisation (2021)
Overview of tools for data analysis and visualisation (2021)
 
Overview data analyis and visualisation tools 2020
Overview data analyis and visualisation tools 2020Overview data analyis and visualisation tools 2020
Overview data analyis and visualisation tools 2020
 
Ruby On Rails Presentation
Ruby On Rails PresentationRuby On Rails Presentation
Ruby On Rails Presentation
 
DSL (Domain Specific Language) for Maps Mashups
DSL (Domain Specific Language) for Maps MashupsDSL (Domain Specific Language) for Maps Mashups
DSL (Domain Specific Language) for Maps Mashups
 
Advanced Web Development
Advanced Web DevelopmentAdvanced Web Development
Advanced Web Development
 
Drupal 8 and iOS - an Open Source App
Drupal 8 and iOS - an Open Source AppDrupal 8 and iOS - an Open Source App
Drupal 8 and iOS - an Open Source App
 
The Recent Pronouncement Of The World Wide Web (Www) Had
The Recent Pronouncement Of The World Wide Web (Www) HadThe Recent Pronouncement Of The World Wide Web (Www) Had
The Recent Pronouncement Of The World Wide Web (Www) Had
 
Cytoscape and the Web
Cytoscape and the WebCytoscape and the Web
Cytoscape and the Web
 
We are the music makers and we are the dreamers of dreams
We are the music makers and we are the dreamers of dreamsWe are the music makers and we are the dreamers of dreams
We are the music makers and we are the dreamers of dreams
 
Doing data visualizations with tableau
Doing data visualizations with tableauDoing data visualizations with tableau
Doing data visualizations with tableau
 
Reaktive Programmierung mit den Reactive Extensions (Rx)
Reaktive Programmierung mit den Reactive Extensions (Rx)Reaktive Programmierung mit den Reactive Extensions (Rx)
Reaktive Programmierung mit den Reactive Extensions (Rx)
 
Gapand 2017 - Diseñando Arquitecturas Serverless en Azure
Gapand 2017 - Diseñando Arquitecturas Serverless en AzureGapand 2017 - Diseñando Arquitecturas Serverless en Azure
Gapand 2017 - Diseñando Arquitecturas Serverless en Azure
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
 
VIZLAND Research Overview
VIZLAND Research OverviewVIZLAND Research Overview
VIZLAND Research Overview
 
Comprehensive Guide to React Development 2022.pptx
Comprehensive Guide to React Development 2022.pptxComprehensive Guide to React Development 2022.pptx
Comprehensive Guide to React Development 2022.pptx
 
Doing data visualizations with tableau
Doing data visualizations with tableauDoing data visualizations with tableau
Doing data visualizations with tableau
 
Rohil
RohilRohil
Rohil
 
Volunteer.rb
Volunteer.rbVolunteer.rb
Volunteer.rb
 
Make Your Data Count: Tips & Tools for Visual Reporting
Make Your Data Count: Tips & Tools for Visual Reporting Make Your Data Count: Tips & Tools for Visual Reporting
Make Your Data Count: Tips & Tools for Visual Reporting
 
Data Structure Graph DMZ #DMZone
Data Structure Graph DMZ #DMZoneData Structure Graph DMZ #DMZone
Data Structure Graph DMZ #DMZone
 

Recently uploaded

Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
AnaAcapella
 

Recently uploaded (20)

Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 

Social data visualization

  • 1.
  • 2. About data visualization  Datavisualization is the science of visual representation of data.
  • 3. About data visualization  Representing large amounts of disparate information in a visual form often allows you to see patterns that would otherwise be buried in vast, unconnected data sets.
  • 4. About data visualization  The effectiveness in conveying ideas is achieved by combining both aesthetics and functionality.
  • 5. What the Web brings into data visualization  Generation and storage of massive and growing amounts of data.
  • 6. What the Web brings into data visualization  Generation and storage of massive and growing amounts of data.  A means to create and share many kinds of visualizations
  • 7. What the Web brings into data visualization  Generation and storage of massive and growing amounts of data.  A means to create and share many kinds of visualizations  Unprecedented access to data
  • 8. What the Web brings into data visualization  Generation and storage of massive and growing amounts of data.  A means to create and share many kinds of visualizations  Unprecedented access to data  Animations and user interactions
  • 9. Social data  A bigpart of the content available on the web is created by the users.
  • 10. Social data  A big part of the content available on the web is created by the users.  This represents the largest amount of data on the Web that needs to be processed and visualized.
  • 11. Social data  A big part of the content available on the web is created by the users.  This represents the largest amount of data on the Web that needs to be processed and visualized.  Important derivative information may surface from creative ways of exploiting this data.
  • 12. Using JavaScript libraries for data visualization  Anyoneaccessing the Web has a browser and every browser supports JavaScript.
  • 13. Using JavaScript libraries for data visualization  Anyone accessing the Web has a browser and every browser supports JavaScript.  JavaScript - very powerful tool to develop client-side web applications, especially those that require user interaction.
  • 14. Using JavaScript libraries for data visualization  Anyone accessing the Web has a browser and every browser supports JavaScript.  JavaScript - very powerful tool to develop client-side web applications, especially those that require user interaction.  Therefore JavaScript libraries for data visualization would hold an incredibly big advantage over any other tool used with the same purpose.
  • 15. Using JavaScript libraries for data visualization  16 Javascript Libraries for Visualizations  We have chosen to focus on Processing.js and Raphaël
  • 16. Processing.js  Makes Processing code run in a webpage.  Makes use of the HTML5 canvas.  How to use Processing.js  Write pure Processing code  Write pure JavaScript code  Combine Processing with JavaScript
  • 17. Raphaël  JavaScript library that simplifies work with vector graphics on the web.  Uses SVG and VML  Extension for charts: gRaphaël
  • 18. Processing.js and Raphaël - Comparison  Drawing  Canvas vs. SVG  Raster vs. Vectorial
  • 19. Processing.js and Raphaël - Comparison  Drawing  Canvas vs. SVG  Raster vs. Vectorial  Coding  Java + JavaScript vs. only JavaScript
  • 20. Processing.js and Raphaël - Comparison  Drawing  Canvas vs. SVG  Raster vs. Vectorial  Coding  Java + JavaScript vs. only JavaScript  Speed  if a single element is changed ○ Raphael can update only that ○ Processing must refresh the entire scene  if the window is rescaled ○ Raphael does nothing and the image maintains its quality ○ Processing must generate the entire scene again
  • 21. Processing.js and Raphaël - Comparison  Functionality  Processing.js has many features inherited from Processing. This allows the user to create very complex drawings.  Raphael has a good reference, but not that large as Processing. Although for simple to more complex tasks it has many features.
  • 22. Processing.js and Raphaël - Comparison  Functionality  Processing.js has many features inherited from Processing. This allows the user to create very complex drawings.  Raphael has a good reference, but not that large as Processing. Although for simple to more complex tasks it has many features.  Documentation  Both frameworks have a well-documented reference with examples and drawings
  • 23. Case studies  Social data to use - what Twitter provides through its API
  • 24. Case studies  Social data to use - what Twitter provides through its API  Idea: a small application that takes tweets from various Twitter accounts and displays them in a chart.
  • 25. Case studies  Social data to use - what Twitter provides through its API  Idea: a small application that takes tweets from various Twitter accounts and displays them in a chart.  This chart shows how many tweets were posted in every day of the week for every user.
  • 26. Case studies  Social data to use - what Twitter provides through its API  Idea: a small application that takes tweets from various Twitter accounts and displays them in a chart.  This chart shows how many tweets were posted in every day of the week for every user.  See our video demo, which shows how the two applications work
  • 27. Case study for Processing.js Application demo | Source code What the chart looks like for various entries
  • 28. Case study for Processing.js Application demo | Source code //Draws weekday labels for(int i=0; i<days.length; i++) { textAlign(CENTER); text(days[i], startX + i * (maxRadius + distance * 2) + (maxRadius + distance * 2)/2, startY - 15); } //Linear scaling transform of number of tweets into circle radius float rad = (stats[i]-minTweets)/(maxTweets-minTweets) * (maxRadius-minRadius) + minRadius; //Compute position and draw circle int x = startX + (maxRadius + distance * 2)/2 + (maxRadius + distance * 2) * i; int y = startY + (maxRadius + distance * 2)/2 + (maxRadius + distance * 2) * index; ellipse( x, y, rad, rad );
  • 29. Case study for Raphaël Application demo | Source code What the chart looks like for various entries
  • 30. Case study for Raphaël Application demo | Source code paper = Raphael("canvas", 900, 400); paper.text(x, y, text) /* To resize the text, another call is used but is chained to the previous one like this: */ attr = {font: "12px Helvetica", opacity: 1}; paper.text(x, y, text).attr(attr); var circle = paper.ellipse(x, y, rad, rad); circle.attr("fill", "#123214"); circle.attr("stroke", "#fff");
  • 31. Conclusions  Both Processing.js and Raphaël have their advantages and disadvantages.  we have concluded that the choice between the two highly depends on the type of project you want to develop and your previous experience with JavaScript  In the end, it all comes down to the needs of the developer.
  • 32. References 1. Educase Learning Initiative, "7 things you should know about Data Visualization", October 2007 2. Michael Friendly, "Milestones in the history of thematic cartography, statistical graphics, and data visualization", August 24, 2009 3. Vitaly Friedman, "Data Visualization and Infographics", in: Graphics, Monday Inspiration, January 14th, 2008. 4. Fernanda Viegas and Martin Wattenberg, "How To Make Data Look Sexy", CNN.com, April 19, 2011. 5. Benjamin Wiederkehr, 16 Javascript Libraries for Visualizations, July 29, 2009 6. Processing.js – Learning 7. Processing.js Quick Start - JavaScript Developer Edition 8. Pomax's guide to Processing.js 9. Raphael documentation
  • 33. Authors  CristinaŞerban, I3B2  Adrian Dumitru Popovici, I3B1 {cristina.serban, popovici.adrian}info.uaic.ro Faculty of Computer Science, Univeristy Alexandru Ioan Cuza of Iaşi