4/25/2016 C. M. Boyd, ceilyn_boyd@harvard.edu Practical Data Visualization with JavaScript Talk Handout



Similar documents
Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph. Client: Brian Krzys

Visualizing MongoDB Objects in Concept and Practice

Sisense. Product Highlights.

Comparative Analysis Report:

Data Visualization in Ext Js 3.4

Building and Deploying Web Applications

Assignment 5: Visualization

Adam Rauch Partner, LabKey Software Extending LabKey Server Part 1: Retrieving and Presenting Data

JavaScript and jquery for Data Analysis and Visualization

Treemap Visualisations

The next computing phase: Mobile + Cloud

Client Overview. Engagement Situation. Key Requirements

Survey Public Visualization Services

RFP# ADDENDUM No. 1 Questions and Answers

Learning Web App Development

Create Cool Lumira Visualization Extensions with SAP Web IDE Dong Pan SAP PM and RIG Analytics Henry Kam Senior Product Manager, Developer Ecosystem

Create interactive web graphics out of your SAS or R datasets

HTML5. Turn this page to see Quick Guide of CTTC

Developer Tutorial Version 1. 0 February 2015

ATLAS job monitoring in the Dashboard Framework

Art of Code Front-end Web Development Training Program

Analytics Software for a World of Smart Devices. Find What Matters in the Data from Equipment Systems and Smart Devices

1. INTERFACE ENHANCEMENTS 2. REPORTING ENHANCEMENTS

XML Processing and Web Services. Chapter 17

Introduction to Web Development with R

Experimental Comparison of Hybrid and Native Applications for Mobile Systems

How To Develop A Mobile App With Phonegap

Visualizing a Neo4j Graph Database with KeyLines

General principles and architecture of Adlib and Adlib API. Petra Otten Manager Customer Support

Web Design Specialist

Petroleum Web Applications to Support your Business. David Jacob & Vanessa Ramirez Esri Natural Resources Team

Advanced Customisation: Scripting EPrints. EPrints Training Course

Scott Moore, Esri April 4, Intermountain, Great Falls, MT

IBM Script Portlet for WebSphere Portal Release 1.1

Pivot Charting in SharePoint with Nevron Chart for SharePoint

Next Generation Lab. A solution for remote characterization of analog integrated circuits

Advanced Web Application Development using Microsoft ASP.NET

Oracle Application Express MS Access on Steroids

Lecture 9 Chrome Extensions

Outline. CIW Web Design Specialist. Course Content

Google Analytics for Robust Website Analytics. Deepika Verma, Depanwita Seal, Atul Pandey

Learning HTML5 Game Programming

What's new in gvsig Desktop 2.0

Visualizing the Top 400 Universities

Visualizing Data: Scalable Interactivity

ios Hybrid Mobile Application Development

DATA PROCESSING AND VISUALISATION TOOLS. European Public Sector Information Platform. Topic Report No / 07. Author: datos.gob.

Vector Web Mapping Past, Present and Future. Jing Wang MRF Geosystems Corporation

Who? Wolfgang Ziegler (fago) Klaus Purer (klausi) Sebastian Gilits (sepgil) epiqo Austrian based Drupal company Drupal Austria user group

Embedded BI made easy

100% NO CODING NO DEVELOPING IMMEDIATE BUSINESS -25% -70% UNLIMITED SCALABILITY DEVELOPMENT TIME SOFTWARE STABILITY

Current Order Tool Experiences Complaints

Software Development Interactief Centrum voor gerichte Training en Studie Edisonweg 14c, 1821 BN Alkmaar T:

Adding Web 2.0 features to a Fleet Monitoring Dashboard

Framework as a master tool in modern web development

MarkLogic Server. Reference Application Architecture Guide. MarkLogic 8 February, Copyright 2015 MarkLogic Corporation. All rights reserved.

Development of a web-based card game engine

Impress Funders and Make Mission and Message Clear: Easy Data Visualization and Infographics. May 10,

5.1 Features Denver CO 80202

Google Web Toolkit. Introduction to GWT Development. Ilkka Rinne & Sampo Savolainen / Spatineo Oy

2013 Ruby on Rails Exploits. CS 558 Allan Wirth

Embed BA into Web Applications

Client-side Web Engineering From HTML to AJAX

Luna Decision Overview. Copyright Hicare Research 2014 All Rights Reserved

Catálogo de cursos plataforma elearning Microsoft Imagine Academy: Microsoft SQL Server y Visual Studio

Architecture Workshop

Native, Hybrid or Mobile Web Application Development

TDAQ Analytics Dashboard

CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application

Programming IoT Gateways With macchina.io

Embed BA into Web Applications

Software Design April 26, 2013

The Prevalence of Flash Vulnerabilities on the Web

Value Added Services (VAS) - Mobile Applications Business Cases

WEB DEVELOPMENT COURSE (PHP/ MYSQL)

2311A: Advanced Web Application Development using Microsoft ASP.NET Course 2311A Three days Instructor-led

Up and Running with LabVIEW Web Services

Niagara 4 The Next-Generation Open Platform

Advanced Web Application Development using Microsoft ASP.NET

d3.js Data-Driven Documents Scott Murray, Jerome Cukier & Jeffrey Heer VisWeek 2012 Tutorial

How to Deploy Custom Visualizations Using D3 on MSTR 10. Version 1.0. Presented by: Felipe Vilela

Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation

Students who successfully complete the Health Science Informatics major will be able to:

OpenText Information Hub (ihub) 3.1 and 3.1.1

Web Development News, Tips and Tutorials

Case Study. Web Application for Financial & Economic Data Analysis Brainvire Infotech Pvt. Ltd Page 1 of 1

Project plan. Haamuryhmä/5 Valmet Power Oy - Continual Improvement Web Tool

Homework 3: Component & Interface Design

Envirofacts API Cory Wagner, US EPA

Welcome to the second half ofour orientation on Spotfire Administration.

ACEYUS REPORTING. Aceyus Intelligence Executive Summary

MyCompany Professional Web Developer Certification Examination Specification

Cloud Computing And Equal Access

Introduction to D3.js Interactive Data Visualization in the Web Browser

Deploy. Friction-free self-service BI solutions for everyone Scalable analytics on a modern architecture

maximizing IT productivity

The full setup includes the server itself, the server control panel, Firebird Database Server, and three sample applications with source code.

WEB SERVICES FOR MOBILE COMPUTING

Introduction to Web AppBuilder for ArcGIS: JavaScript Apps Made Easy

Advanced Visualizations Tools for CERN Institutional Data

Transcription:

Practical Data Visualization with JavaScript Talk Handout Use the Workflow Methodology to Compare Options Name Type Data sources End to end Workflow Support Data transformers Data visualizers General Data Exploration Integration Scripting Language Google Maps API API Yes No Yes No No Manual Yes Google Maps Geocoding API API Yes No No No No Manual Yes Library Cloud API Yes Yes No No No Manual Excel Application Yes Yes Yes Yes Yes Automatic Yes Google Sheets Application Yes Yes Yes Yes Yes Automatic Yes Jupyter Application Yes Yes Yes Yes Yes Automatic Yes OpenRefine Application Yes Yes No No No Manual Yes Plot.ly Application Yes Yes Yes Yes Yes Automatic Yes R Application Yes Yes Yes Yes Yes Automatic Yes Tableau Application Yes Yes Yes Yes Yes Automatic Yes Google Charts Application, Library, API Yes Yes Yes Yes Yes Manual Yes MySQL Application/Database Yes Yes No No No Manual Yes OCLC Datasets Data repository Yes No No No No Manual Dataverse Data repository, API Yes Yes No No No Manual Yes HathiTrust Data & API Data repository, API Yes Yes No No No Manual MS Access Database Yes Yes No No No Manual Yes Processing.org Development Environment No No Yes No No Manual Yes Chart.js JavaScript Library No No Yes No No Manual D3.js JavaScript Library No Yes Yes No No Manual DataTables.js JavaScript Library Yes Yes No No No Manual Dygraphs.js JavaScript Library No No Yes No No Manual jqplot.js JavaScript Library No No Yes No No Manual Processing.js JavaScript Library No No Yes No No Manual vis.js JavaScript Library Yes Yes Yes No No Manual 1

Summary of Workflow Implementation Considerations (examples) Category Data sources Data transformers Data visualizers Workflow Legal & Ethical Restrictions on access/use Sensitive content Restrictions on use Ethical concerns about transformation of data Restrictions on transformation of data Restrictions on use Ethical concerns about presentation of data Restrictions on presentation of data Licensing of application, plugins, and/or components Content based restrictions on sharing presentation and/or results Access/use restrictions on sharing presentation and/or results API limits Data quantity Data complexity Data format Tied to use within system Has standalone option Relevant APIs Impact upon data quality Tied to use within system Standalone option available Compatible with dataset size Compatible with data type Compatible with dataset size Compatible with data type Tied to use within system Standalone option available Support for viewing on multiple devices, in multiple environments Application may require plugins Constraints on sharing results of workflow with others Format of data outputs must align with expected input format for transformers or visualizers Workflow is scalable for large quantities of data (e.g. bandwidth, compute resources) Sustainability Useful as is Ability to select subsets Requires complementary datasets Requires special skills/knowledge to use Time limit on access/use Data timeliness Requires special skills/knowledge Supports desired functionality (e.g. selecting subsets; exporting data) Time limit on access/use Requires special skills Uses recognized standards to implement transformation Support for saving/reusing transformed data Support for, restrictions on exporting data Accessibility standards Visuals support user engagement to the degree required Time limit on access/use Requires special skills Uses recognized standards for implementation Requires special skills/knowledge to implement entire workflow Workflow save/export/reuse support Results save/export/reuse support Restrictions on save/export/reuse of workflow and/or results 2

Aesthetic Configuration and styling support Visuals support the story/report Visuals are engaging/compelling Summary of JavaScript Workflow Considerations Category Data sources Data transformers Data visualizers Workflow Legal & Ethical Libraries are often Open Source Libraries are often Open Source JavaScript and Node.js are free to use Many data sources have JavaScript APIs or are accessible via Web services Sustainability Many data sources support XML or JSON output which JavaScript handles well JavaScript ubiquity/popularity drives vendor commitment and user community JavaScript can be used to transform data in the browser or standalone (Node.js) JavaScript libraries support many types of data transformations Many JavaScript data import libraries Node.js can be to process large quantities of data outside the browser JavaScript data structures are easy to manipulate and are humanreadable Tools exist for easy viewing of JSON files Many Open Source options Libraries often use recognized standards Many JavaScript visualizers and graphics library options JavaScript libraries exist for WebGL and SVG JavaScript can support user interaction with UI elements and visual elements Many Open Source options JavaScript skills are a common extension of Web skills JavaScript can be run in the browser, server, or as a console app One language can span the entire workflow Requires JavaScript skills to implement entire workflow Popular scripting language Downside: Limited workflow save/export/reuse support (other than GitHub) Active user communities Aesthetic Depends upon the library JavaScript support easy configuration through objects 3

Examples: Colonial North American Datasets Workflow Considerations Workflow Component Data source Data transformers Data visualizers Workflow MS Access, Excel MS Access TSV to JSON using Node.js Bar chart: jqplot.js Radar plot: Chart.js DataTables Goal: Reporting Legal & Ethical Not all source data could be shared (review pending) Multiple data sources Medium sized dataset (5,000 data points) Mixed text, numerical, and categorical data Data is primarily textual, not numeric Data subset using MS Access Multiple data transformations from TSV to JSON for individual datasets Transformation from JSON to array data structures Requires custom transformations Visualizers required arrays as input Manual integration of components Management of multiple visualizers Workflow is entirely encapsulated in the application Data source in easy to manipulate tabular format Data format easy to manipulate with MS Access and JavaScript Visualizers supported easy configuration via JavaScript objects Size of datasets has impact on usability Requires knowledge of HTML, CSS, and JavaScript Sustainability Project is ongoing so datasets will be updated frequently Aesthetic Size of datasets has impact on visual design 4

Examples: Towards a Collections and Content Development Strategic Plan Datasets Workflow Considerations Data source Data transformers Data visualizers Workflow Workflow Component Email, Word, Excel (TSV) TSV > JSON using Node.js Bar chart: jqplot.js Bubble chart: jqplot.js Legal & Ethical Data contains names of original interview participants Anonymize source data using transformer Goal: Reporting Mixed text, numerical, and categorical data Data is primarily textual, not numeric Multiple data transformations from TSV to JSON for individual datasets Transformation from JSON to array data structures Requires custom transformations Visualizers required arrays as input Manual integration of components Management of multiple visualizers Workflow is entirely encapsulated in the application Data source in easy tomanipulate tabular format Data format easy to manipulate using JavaScript Visualizers supported easy configuration via JavaScript Size of dataset has impact on usability Requires knowledge of HTML, CSS, and JavaScript Sustainability Data source is closed, no new data Aesthetic Size of datasets has impact on visual design 5

Examples: OASIS Timeline Viewer Workflow Considerations Workflow Component Data source Data transformers Data visualizers Workflow CSV CSV > JavaScript objects, arrays (in the browser) Bar chart: jqplot.js Timeline: vis.js DataTables.js Legal & Ethical Goal: Data exploration Single data source Arbitrary dataset size (some very small, some very large) Multiple visualizers required multiple data formats Complex data structures required Complex parsing of data required Visualizers require configuration Visualizers use different data types Manual integration of components Management of multiple visualizers Management of user interaction Workflow is entirely encapsulated in the application Data source in easy to manipulate tabular format Data format easy to manipulate using JavaScript Visualizers supported easy configuration via JavaScript Size of dataset has impact on usability Requires knowledge of HTML, CSS, and JavaScript Sustainability Data source will be retired eventually Aesthetic Size of dataset has impact on visual design 6