+ All Categories
Home > Technology > How Quick Can We Be? Data Visualization Techniques for Engineers.

How Quick Can We Be? Data Visualization Techniques for Engineers.

Date post: 29-Jan-2018
Category:
Upload: avni-khatri
View: 3,331 times
Download: 0 times
Share this document with a friend
92
How quick can we be? (data visualization techniques for engineers)
Transcript
Page 1: How Quick Can We Be? Data Visualization Techniques for Engineers.

How quick can we be? (data visualization techniques for engineers)

Page 2: How Quick Can We Be? Data Visualization Techniques for Engineers.

Who we are

Page 3: How Quick Can We Be? Data Visualization Techniques for Engineers.

Who we are

Alice Bonhomme-Biais

Page 4: How Quick Can We Be? Data Visualization Techniques for Engineers.

Who we are

Alice Bonhomme-Biais Avni Khatri

Page 5: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 6: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 7: How Quick Can We Be? Data Visualization Techniques for Engineers.

DATA

Page 8: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 9: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 10: How Quick Can We Be? Data Visualization Techniques for Engineers.

OUR PROCESS

Page 11: How Quick Can We Be? Data Visualization Techniques for Engineers.

Goals

Page 12: How Quick Can We Be? Data Visualization Techniques for Engineers.

Goals1. Plot the number of people at each location

Page 13: How Quick Can We Be? Data Visualization Techniques for Engineers.

Goals1. Plot the number of people at each location

2. Plot the percentage of women at each location

Page 14: How Quick Can We Be? Data Visualization Techniques for Engineers.

Goals1. Plot the number of people at each location

2. Plot the percentage of women at each location

3. Plot two dimensions

Page 15: How Quick Can We Be? Data Visualization Techniques for Engineers.

Goals1. Plot the number of people at each location

2. Plot the percentage of women at each location

3. Plot two dimensions

4. Clearly show the gender disparity

Page 16: How Quick Can We Be? Data Visualization Techniques for Engineers.

Goals1. Plot the number of people at each location

2. Plot the percentage of women at each location

3. Plot two dimensions

4. Clearly show the gender disparity

5. Use the tool to visualize data for future RHoKs

Page 17: How Quick Can We Be? Data Visualization Techniques for Engineers.

OPENHEATMAP

Page 19: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 20: How Quick Can We Be? Data Visualization Techniques for Engineers.

TOOLS

Page 21: How Quick Can We Be? Data Visualization Techniques for Engineers.

Non-programmatic tools

Page 22: How Quick Can We Be? Data Visualization Techniques for Engineers.

Non-programmatic tools• OpenHeatMap

• Google Fusion Tables

• Google Charts

• Socrata

• ChartsBin

• Factual

Page 23: How Quick Can We Be? Data Visualization Techniques for Engineers.

Non-programmatic tools• OpenHeatMap

• Google Fusion Tables

• Google Charts

• Socrata

• ChartsBin

• Factual

Page 24: How Quick Can We Be? Data Visualization Techniques for Engineers.

Non-programmatic tools• OpenHeatMap

• Google Fusion Tables

• Google Charts

• Socrata

• ChartsBin

• Factual

Page 25: How Quick Can We Be? Data Visualization Techniques for Engineers.

Programatic tools

Page 26: How Quick Can We Be? Data Visualization Techniques for Engineers.

Programatic tools• Google Maps JS API

• Yahoo! Maps Web Services

• Bing Maps AJAX Control

• Google Charts Tools

Page 27: How Quick Can We Be? Data Visualization Techniques for Engineers.

GOOGLE FUSION TABLES

Page 29: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 30: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 31: How Quick Can We Be? Data Visualization Techniques for Engineers.

SOCRATA

Page 32: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 33: How Quick Can We Be? Data Visualization Techniques for Engineers.

GOOGLE MAPS API

Page 34: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 35: How Quick Can We Be? Data Visualization Techniques for Engineers.

function initialize() { var latlng = new google.maps.LatLng(41.850033, -87.6500523); var myOptions = { zoom: 3, center: latlng, mapTypeId: google.maps.MapTypeId.ROADMAP };

var map = new google.maps.Map( document.getElementById("map_canvas"), myOptions); }

Page 36: How Quick Can We Be? Data Visualization Techniques for Engineers.

function initialize() { var latlng = new google.maps.LatLng(41.850033, -87.6500523); var myOptions = { zoom: 3, center: latlng, mapTypeId: google.maps.MapTypeId.ROADMAP };

var map = new google.maps.Map( document.getElementById("map_canvas"), myOptions); }

Page 37: How Quick Can We Be? Data Visualization Techniques for Engineers.

function initialize() { var latlng = new google.maps.LatLng(41.850033, -87.6500523); var myOptions = { zoom: 3, center: latlng, mapTypeId: google.maps.MapTypeId.ROADMAP };

var map = new google.maps.Map( document.getElementById("map_canvas"), myOptions); }

Page 38: How Quick Can We Be? Data Visualization Techniques for Engineers.

var locations = [ ["Aarhus, Denmark",56.162939,10.203921,10,20], ["Bangalore, India",12.971599,77.594563,217,11.98], ["Chicago, Illinois",41.878114,-87.629798,107,31.78], ["Nairobi, Kenya",1.283333,36.816667,33,6.06].......];

Page 39: How Quick Can We Be? Data Visualization Techniques for Engineers.

var locations = [ ["Aarhus, Denmark",56.162939,10.203921,10,20], ["Bangalore, India",12.971599,77.594563,217,11.98], ["Chicago, Illinois",41.878114,-87.629798,107,31.78], ["Nairobi, Kenya",1.283333,36.816667,33,6.06].......];

Page 40: How Quick Can We Be? Data Visualization Techniques for Engineers.

// add call to setMarkers in initialize function initialize() { ... setMarkers (map, locations); }

function setMarkers(map, markers) { ...

for (var i = 0; i < markers.length; i++) { markerLatLng = new google.maps.LatLng(markers[i][1],markers[i][2]);

marker = new google.maps.Marker({ position: markerLatLng, map: map, title: markers[i][0], zIndex: 1 ); } }

Page 41: How Quick Can We Be? Data Visualization Techniques for Engineers.

// add call to setMarkers in initialize function initialize() { ... setMarkers (map, locations); }

function setMarkers(map, markers) { ... for (var i = 0; i < markers.length; i++) { markerLatLng = new google.maps.LatLng(markers[i][1],markers[i][2]);

marker = new google.maps.Marker({ position: markerLatLng, map: map, title: markers[i][0], zIndex: 1 ); } }

Page 42: How Quick Can We Be? Data Visualization Techniques for Engineers.

// add call to setMarkers in initialize function initialize() { ... setMarkers (map, locations); }

function setMarkers(map, markers) { ... for (var i = 0; i < markers.length; i++) { markerLatLng = new google.maps.LatLng(markers[i][1],markers[i][2]);

marker = new google.maps.Marker({ position: markerLatLng, map: map, title: markers[i][0], zIndex: 1 ); } }

Page 43: How Quick Can We Be? Data Visualization Techniques for Engineers.

function setMarkers(map, markers) { for (var i = 0; i < markers.length; i++) { ...

iwContent = "<span class=\”label\”>" + markers[i][0] + "</span><br/>" + "Number of People: " + markers[i][3] + "<br/>" + "% of Women: " + markers[i][4];

marker = new google.maps.Marker({ ... html: iwContent });

google.maps.event.addListener(marker, "click", function() {

infowindow.setContent(this.html); infowindow.open(map, this); }); } }

function initialize() { ... infowindow = new google.maps.InfoWindow({ content: "loading..." }); }

Page 44: How Quick Can We Be? Data Visualization Techniques for Engineers.

function initialize() { ... infowindow = new google.maps.InfoWindow({ content: "loading..." }); }

function setMarkers(map, markers) { for (var i = 0; i < markers.length; i++) { ...

iwContent = "<span class=\”label\”>" + markers[i][0] + "</span><br/>" + "Number of People: " + markers[i][3] + "<br/>" + "% of Women: " + markers[i][4];

marker = new google.maps.Marker({ ... html: iwContent });

google.maps.event.addListener(marker, "click", function() {

infowindow.setContent(this.html); infowindow.open(map, this); }); } }

Page 45: How Quick Can We Be? Data Visualization Techniques for Engineers.

function setMarkers(map, markers) { for (var i = 0; i < markers.length; i++) { ...

iwContent = "<span class=\”label\”>" + markers[i][0] + "</span><br/>" + "Number of People: " + markers[i][3] + "<br/>" + "% of Women: " + markers[i][4];

marker = new google.maps.Marker({ ... html: iwContent });

google.maps.event.addListener(marker, "click", function() {

infowindow.setContent(this.html); infowindow.open(map, this); }); } }

function initialize() { ... infowindow = new google.maps.InfoWindow({ content: "loading..." }); }

Page 46: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 47: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 48: How Quick Can We Be? Data Visualization Techniques for Engineers.

<script src="http://gmaps-utility-library.googlecode.com/svn/trunk/markerclusterer/1.0/src/markerclusterer.js"></script>

var data = {"count": 232,"participants": [ { "location": "Aarhus, Denmark", "gender": "Female", "latitude": "56.162939", "longitude": "10.203921" }, { "location": "Aarhus, Denmark", "gender": "Female", "latitude": "56.162939", "longitude": "10.203921" }......]};

Page 49: How Quick Can We Be? Data Visualization Techniques for Engineers.

var data = {"count": 232,"participants": [ { "location": "Aarhus, Denmark", "gender": "Female", "latitude": "56.162939", "longitude": "10.203921" }, { "location": "Aarhus, Denmark", "gender": "Female", "latitude": "56.162939", "longitude": "10.203921" }......]};

<script src="http://gmaps-utility-library.googlecode.com/svn/trunk/markerclusterer/1.0/src/markerclusterer.js"></script>

Page 50: How Quick Can We Be? Data Visualization Techniques for Engineers.

<script src="http://gmaps-utility-library.googlecode.com/svn/trunk/markerclusterer/1.0/src/markerclusterer.js"></script>

var data = {"count": 232,"participants": [ { "location": "Aarhus, Denmark", "gender": "Female", "latitude": "56.162939", "longitude": "10.203921" }, { "location": "Aarhus, Denmark", "gender": "Female", "latitude": "56.162939", "longitude": "10.203921" }......]};

Page 51: How Quick Can We Be? Data Visualization Techniques for Engineers.

var markers = [];

for (var i = 0; i < data.participants.length; ++i) { var latlng = new GLatLng(data.participants[i].latitude, data.participants[i].longitude); var marker = new GMarker(latlng, {icon: icon}); markers.push(marker);}var markerCluster = new MarkerClusterer(map, markers);

Page 52: How Quick Can We Be? Data Visualization Techniques for Engineers.

var markers = [];

for (var i = 0; i < data.participants.length; ++i) { var latlng = new GLatLng(data.participants[i].latitude, data.participants[i].longitude); var marker = new GMarker(latlng, {icon: icon}); markers.push(marker);}var markerCluster = new MarkerClusterer(map, markers);

Page 53: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 54: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 55: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 56: How Quick Can We Be? Data Visualization Techniques for Engineers.

var layer = new google.maps.FusionTablesLayer(747060, { heatmap: true });

layer.setMap(map);

Page 57: How Quick Can We Be? Data Visualization Techniques for Engineers.

var layer = new google.maps.FusionTablesLayer(747060, { heatmap: true });

layer.setMap(map);

Page 58: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 59: How Quick Can We Be? Data Visualization Techniques for Engineers.

function plotCircles(map, dataPoints) {

...

for (var i = 0; i < dataPoints.length; i++) { pointLatLng = new google.maps.LatLng(dataPoints[i][1],dataPoints[i][2]); circleOptions = { strokeColor: "#FF0000", strokeOpacity: 0.8, strokeWeight: 2, fillColor: “#FF0000”, fillOpacity: 0.40, map: map, center: pointLatLng, radius: dataPoints[i][3]*3000 }; circle = new google.maps.Circle(circleOptions); }

Page 60: How Quick Can We Be? Data Visualization Techniques for Engineers.

function plotCircles(map, dataPoints) {

...

for (var i = 0; i < dataPoints.length; i++) { pointLatLng = new google.maps.LatLng(dataPoints[i][1],dataPoints[i][2]); circleOptions = { strokeColor: "#FF0000", strokeOpacity: 0.8, strokeWeight: 2, fillColor: “#FF0000”, fillOpacity: 0.40, map: map, center: pointLatLng, radius: dataPoints[i][3]*3000 }; circle = new google.maps.Circle(circleOptions); }

Page 61: How Quick Can We Be? Data Visualization Techniques for Engineers.

...

percentage = dataPoints[i][4];

if (percentage <= 10) { color = "#FF0000"; } else if (percentage >=20) { color = "#339900"; } else { color = "#FFCC00"; }

circleOptions = { strokeColor: color, ....

Page 62: How Quick Can We Be? Data Visualization Techniques for Engineers.

...

percentage = dataPoints[i][4];

if (percentage <= 10) { color = "#FF0000"; } else if (percentage >=20) { color = "#339900"; } else { color = "#FFCC00"; }

circleOptions = { strokeColor: color, ....

Page 63: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 64: How Quick Can We Be? Data Visualization Techniques for Engineers.

...

setMarkers (map, locations);infowindow = new google.maps.InfoWindow({ content: "loading..." });

....

Page 65: How Quick Can We Be? Data Visualization Techniques for Engineers.

...

setMarkers (map, locations);infowindow = new google.maps.InfoWindow({ content: "loading..." });

....

Page 66: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 67: How Quick Can We Be? Data Visualization Techniques for Engineers.

YAHOO! MAPS WEB SERVICES

Page 68: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 69: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 70: How Quick Can We Be? Data Visualization Techniques for Engineers.

.... icon = new YImage(); icon.src = "marker_34_red.png"; icon.size = new YSize(20,34); icon.offsetSmartWindow = new YCoordPoint(9,0);

....

var marker = new YMarker(point, icon);

....

Page 71: How Quick Can We Be? Data Visualization Techniques for Engineers.

.... icon = new YImage(); icon.src = "marker_34_red.png"; icon.size = new YSize(20,34); icon.offsetSmartWindow = new YCoordPoint(9,0); ....

var marker = new YMarker(point, icon);

....

Page 72: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 73: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 74: How Quick Can We Be? Data Visualization Techniques for Engineers.

GOOGLE CHARTS TOOLS

Page 75: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 76: How Quick Can We Be? Data Visualization Techniques for Engineers.

ConclusionsVisualize 2

sets of dataNo Coding Legend First Map Full Control

OpenHeatMap Easy

Google Fusion

TablesEasy

Google Charts Moderate

Socrata Moderate

Google Maps API Moderate

Yahoo Maps

Web ServicesModerate

Google Charts

ToolsModerate

Page 77: How Quick Can We Be? Data Visualization Techniques for Engineers.

Conclusions

Page 78: How Quick Can We Be? Data Visualization Techniques for Engineers.

Conclusions• Very easy to plot flat numbers with most tools

Page 79: How Quick Can We Be? Data Visualization Techniques for Engineers.

Conclusions• Very easy to plot flat numbers with most tools

• Plotting multiple sets of data without code is not trivial

Page 80: How Quick Can We Be? Data Visualization Techniques for Engineers.

Conclusions• Very easy to plot flat numbers with most tools

• Plotting multiple sets of data without code is not trivial

• Flash graphics still ahead of JS graphics with respect to data visualization

Page 81: How Quick Can We Be? Data Visualization Techniques for Engineers.

Conclusions• Very easy to plot flat numbers with most tools

• Plotting multiple sets of data without code is not trivial

• Flash graphics still ahead of JS graphics with respect to data visualization

• Most map and charting tools need better overall legend support

Page 82: How Quick Can We Be? Data Visualization Techniques for Engineers.

Conclusions• Very easy to plot flat numbers with most tools

• Plotting multiple sets of data without code is not trivial

• Flash graphics still ahead of JS graphics with respect to data visualization

• Most map and charting tools need better overall legend support

• Maps API products very similar in structure

Page 83: How Quick Can We Be? Data Visualization Techniques for Engineers.

Conclusions• Very easy to plot flat numbers with most tools

• Plotting multiple sets of data without code is not trivial

• Flash graphics still ahead of JS graphics with respect to data visualization

• Most map and charting tools need better overall legend support

• Maps API products very similar in structure

• We've uncovered just the tip of the iceberg in terms of data visualization

Page 84: How Quick Can We Be? Data Visualization Techniques for Engineers.

Conclusions• Very easy to plot flat numbers with most tools

• Plotting multiple sets of data without code is not trivial

• Flash graphics still ahead of JS graphics with respect to data visualization

• Most map and charting tools need better overall legend support

• Maps API products very similar in structure

• We've uncovered just the tip of the iceberg in terms of data visualization

• Our visualized data showed us that the more the people that attended the event, the more likely we were to meet the 20% challenge

Page 85: How Quick Can We Be? Data Visualization Techniques for Engineers.

Conclusions• Very easy to plot flat numbers with most tools

• Plotting multiple sets of data without code is not trivial

• Flash graphics still ahead of JS graphics with respect to data visualization

• Most map and charting tools need better overall legend support

• Maps API products very similar in structure

• We've uncovered just the tip of the iceberg in terms of data visualization

• Our visualized data showed us that the more the people that attended the event, the more likely we were to meet the 20% challenge

• We need to improve and automate our data collection process as much as possible

Page 86: How Quick Can We Be? Data Visualization Techniques for Engineers.

Conclusions• Very easy to plot flat numbers with most tools

• Plotting multiple sets of data without code is not trivial

• Flash graphics still ahead of JS graphics with respect to data visualization

• Most map and charting tools need better overall legend support

• Maps API products very similar in structure

• We've uncovered just the tip of the iceberg in terms of data visualization

• Our visualized data showed us that the more the people that attended the event, the more likely we were to meet the 20% challenge

• We need to improve and automate our data collection process as much as possible

• We need more women hackers

Page 87: How Quick Can We Be? Data Visualization Techniques for Engineers.

Conclusions• Very easy to plot flat numbers with most tools

• Plotting multiple sets of data without code is not trivial

• Flash graphics still ahead of JS graphics with respect to data visualization

• Most map and charting tools need better overall legend support

• Maps API products very similar in structure

• We've uncovered just the tip of the iceberg in terms of data visualization

• Our visualized data showed us that the more the people that attended the event, the more likely we were to meet the 20% challenge

• We need to improve and automate our data collection process as much as possible

• We need more women hackers

• When women do participate, they win!

Page 88: How Quick Can We Be? Data Visualization Techniques for Engineers.
Page 91: How Quick Can We Be? Data Visualization Techniques for Engineers.

Resources and further • http://msdn.microsoft.com/en-us/library/bb429619.aspx

• http://code.google.com/apis/chart/

• http://www.google.com/fusiontables/public/tour/index.html

• http://code.google.com/apis/maps/documentation/javascript/

• http://developer.yahoo.com/maps/

• http://www.openheatmap.com/

• http://googlegeodevelopers.blogspot.com/2009/04/markerclusterer-solution-to-too-many.html

• http://opendata.socrata.com/

Page 92: How Quick Can We Be? Data Visualization Techniques for Engineers.

Photo Credits• http://www.flickr.com/photos/compassalba/5361528668/sizes/o/in/photostream/

• http://www.flickr.com/photos/rhok_chicago/5244434726/in/set-72157625557470340

• http://www.flickr.com/photos/rhok_chicago/5233673064/in/set-72157625529538216 

• http://www.flickr.com/photos/10785432@N03/4123252604/

• http://www.flickr.com/photos/thehbunny/5055948378/

• http://www.flickr.com/photos/53941041@N00/4977883190/

• http://www.flickr.com/photos/rhok_chicago/5243866521/

• http://www.flickr.com/photos/rhok_chicago/5244461658/in/set-72157625557470340

• http://www.flickr.com/photos/rhok_chicago/5233687260/in/set-72157625529538216

• http://www.flickr.com/photos/ladypain/1950149100/in/photostream/

• http://www.flickr.com/photos/10687935@N04/3055314845/

• http://www.flickr.com/photos/42788859@N00/318947873/


Recommended