TrelliscopeJS. Ryan Hafen. Modern Approaches to Data Exploration with Trellis Display

Size: px
Start display at page:

Download "TrelliscopeJS. Ryan Hafen. Modern Approaches to Data Exploration with Trellis Display"

Transcription

1 TrelliscopeJS Modern Approaches to Data Exploration with Trellis Display Ryan Hafen Hafen Consulting, LLC Purdue

2 All examples in this talk are reproducible after installing and loading the following packages: install.packages(c("tidyverse", "gapminder", "rbokeh", "visnetwork", "plotly")) devtools::install_github("hafen/trelliscopejs") library(tidyverse) library(gapminder) library(rbokeh) library(visnetwork) library(trelliscopejs)

3 TrelliscopeJS is an htmlwidget TrelliscopeJS is a layout engine for collections of htmlwidgets TrelliscopeJS is a framework for creating interactive displays of small multiples

4 Small Multiples A series of similar plots, usually each based on a different slice of data, arranged in a grid This idea was formalized and popularized in S/S-PLUS and subsequently R with the trellis and lattice packages "For a wide range of problems in data presentation, small multiples are the best design solution." Edward Tufte (Envisioning Information)

5 source: Advantages of Small Multiple Displays Avoid overplotting Work with big or high dimensional data It is often critical to the discovery of a new insight to be able to see multiple things at once Our brains are good at perceiving simple visual features like color or shape or size and they do it amazingly fast without any conscious effort We can tell immediately when a part of an image is different from the rest, without really having to focus on it In my experience, small multiples are much more effective than more flashy things like animation, linked brushing, custom interactive vis, etc.

6 source: Trelliscope: Interactive Small Multiple Display Small multiple displays are useful when visualizing data in detail But the number of panels in a display can be potentially very large, too large to view all at once It can also be difficult to specify a meaningful order in which panels are displayed Trelliscope is a general solution that allows small multiple displays to come alive by providing the ability to interactively sort and filter the panels based on summary statistics, cognostics, automatically computed for each panel

7 TrelliscopeJS JavaScript Library trelliscopejs-lib R Package trelliscopejs Built using React Pure JavaScript Interface agnostic htmlwidget interface to trelliscopejs-lib Evolved from CRAN "trelliscope" package (part of DeltaRho project)

8 Gapminder Example glimpse(gapminder) bservations:, ariables: country fctr fghanistan, fghanistan, fghanistan, fghanistan, fgh... continent fctr sia, sia, sia, sia, sia, sia, sia, sia, sia, s... year int,,,,,,,,,... lifep dbl.,.,.,.,.,.,.,... pop int,,,,,,... gdp ercap dbl.,.,.,.,.,.... Suppose we want to understand mortality over time for each country

9 plot(year, lifep, data gapminder, color country, geom "line") Yikes! There are a lot of countries...

10 plot(year, lifep, data gapminder, color continent, group country, geom "line") I can't see what's going on...

11 plot(year, lifep, data gapminder, color continent, group country, geom "line") facet_wrap( continent, nrow ) That helped a little...

12 p plot(year, lifep, data gapminder, color continent, group country, geom "line") facet_wrap( continent, nrow ) plotly::ggplotly(p) This helps but there is still too much overplotting... (and hovering for additional info is too much work and we can only see more info one at a time)

13 plot(year, lifep, data gapminder) lim(, ) ylim(, ) theme_bw() facet_wrap( country continent)

14 From ggplot2 Faceting to Trelliscope Turning a ggplot2 faceted display into a Trelliscope display is as easy as changing: facet_wrap() or: facet_grid() to: facet_trelliscope()

15 plot(year, lifep, data gapminder) lim(, ) ylim(, ) theme_bw() facet_trelliscope( country continent, nrow = 2, ncol = 7, width = 300) open in new window

16 plot(year, lifep, data gapminder) lim(, ) ylim(, ) theme_bw() facet_trelliscope( country continent, nrow, ncol, width, s plotl = ) open in new window

17 Plotting in the Tidyverse

18 Gapminder Example from "R for Data Science" country_model function(df) lm(lifep year, data df) by_country gapminder group_by(country, continent) nest() mutate( model map(data, country_model), resid_mad map_dbl(model, function( ) mad(resid( )))) One row per group Per-group data and models as "list-columns" by_country tibble: country continent data model resid_mad fctr fctr list list dbl fghanistan sia tibble : lm. lbania urope tibble : lm. lgeria frica tibble : lm. ngola frica tibble : lm. rgentina mericas tibble : lm. ustralia ceania tibble : lm. ustria urope tibble : lm. ahrain sia tibble : lm. angladesh sia tibble : lm. elgium urope tibble : lm.... with more rows Example adapted from "R for Data Science"

19 Plotting the Fit for Each Country Excerpt from "R for Data Science"

20 Plotting the Data and Model Fit for a Group We'll use the rbokeh package to make a plot function and apply it to the first row of our data country_plot function(data, model) figure( lim c(, ), ylim c(, ), tools N ) ly_points(year, lifep, data data, hover data) ly_abline(model) country_plot(by_country data, by_country model )

21 Let's Apply This Function to Every Row! by_country by_country mutate(plot p2 plot(data, model, country_plot)) by_country tibble: country continent data model resid_mad plot fctr fctr list list dbl list fghanistan sia tibble : lm. : rbokeh lbania urope tibble : lm. : rbokeh lgeria frica tibble : lm. : rbokeh ngola frica tibble : lm. : rbokeh rgentina mericas tibble : lm. : rbokeh ustralia ceania tibble : lm. : rbokeh ustria urope tibble : lm. : rbokeh ahrain sia tibble : lm. : rbokeh angladesh sia tibble : lm. : rbokeh elgium urope tibble : lm. : rbokeh... with more rows Plots as list-columns!!!

22 by_country trelliscope(name "by_country_lm", nrow, ncol ) open in new window

23 Recap: TrelliscopeJS in the Tidyverse Create a data frame with one row per group, typically using Tidyverse group_by() and nest() operations Add a column of plots TrelliscopeJS provides purrr map functions map_plot(), map2_plot(), pmap_plot() that you can use to create these You can use any graphics system to create the plot objects (ggplot2, htmlwidgets, lattice) Optionally add more columns to the data frame that will be used as cognostics - metrics with which you can interact with the panels All atomic columns will be automatically used as cognostics Map functions map_cog(), map2_cog(), pmap_cog() can be used for convenience to create columns of cognostics Simply pass the data frame in to trelliscope() With plots as columns, TrelliscopeJS provides nearly effortless detailed, flexible, interactive visualization in the Tidyverse

24 open in new window by_country Order the data frame to set arrange( resid_mad) initial ordering of display trelliscope(name "by_country_lm", nrow, ncol )

25 open in new window by_country Filter the data to only include filter(continent " frica") plots you want in the display trelliscope(name "by_country_africa_lm", nrow, ncol )

26 Images as Panels

27 pokemon read_csv(" mutate_at(vars(matches("_id ")), as.character) mutate(panel img_panel(url_image)) pokemon Show 10 entries Search: pokemon id species_id height weight base_experience type_1 type_2 attack 1 bulbasaur grass poison 49 2 ivysaur grass poison 62 3 venusaur grass poison grass poison charmander fire 52 6 charmeleon fire 64 7 charizard fire flying venusaurmega charizardmega-x charizardmega-y fire dragon fire flying squirtle water 48 Showing 1 to 10 of 801 entries Previous N

28 trelliscope(pokemon, name "pokemon", nrow, ncol, state list(labels c("pokemon", "pokede "))) data source blog post open in new window

29 htmlwidgets as Panels

30 Example: Network Vis with visnetwork htmlwidget 1 library(visnetwork) nnodes nnedges nodes data.frame( id :nnodes, label :nnodes, value rep(, nnodes)) edges data.frame( from sample( :nnodes, nnedges, replace ), to sample( :nnodes, nnedges, replace )) group_by(from, to) summarise(value n()) network_plot function(id, hide_select ) style ifelse(hide_select, "visibility: hidden position: absolute", "") visnetwork(nodes, edges) vis graph ayout(layout "layout_in_circle") visnodes(fi ed, scaling list(min, ma, label list(min, ma, draw hreshold, maisible ))) vis dges(scaling list(min, ma )) vis ptions(highlightnearest list(enabled, degree, hide olor "rgba(,,,. )"), nodes d election list(selected as.character(id), style style)) network_plot(, hide_select )

31 Trelliscope display with one panel per node We create a one-row-per-node data frame with number of nodes connected to and total number of connections as cognostics and add a plot panel column nodedat edges group_by(from) summarise(n_nodes n(), tot_conns sum(value)) rename(id from) arrange( n_nodes) mutate(panel map_plot(id, network_plot)) nodedat tibble: id n_nodes tot_conns panel int int int list : visnetwork : visnetwork : visnetwork : visnetwork : visnetwork : visnetwork : visnetwork : visnetwork : visnetwork : visnetwork... with more rows

32 nodedat arrange( n_nodes) trelliscope(name "connections", nrow, ncol ) open in new window

33 Larger Trelliscope Displays

34

35 instadf %>% arrange(-likes_count) %>% trelliscope(name = "posts", width = 320, height = 320, nrow = 3, ncol = 6, state = list(labels = c("caption", "post_link", "likes_count"))) blog post open in new window

36 Trelliscope Displays as Apps

37 Trelliscope Displays as Apps Trelliscope displays are most useful as exploratory plots to guide the data scientist (because they can be created rapidly) However, in many cases Trelliscope displays can be used as interactive applications for end-users, domain experts, etc. with the bonus that they are much easier to create than a custom app If you have an app that has multiple inputs and produces a plot output, the idea is simply to enumerate all possible inputs as rows of a data frame and add the plot that corresponds to these parameters as column and plot it

38 library(shiny) library(ggplot2) library(gapminder) server <- function(input, output) { output$countryplot <- renderplot({ qplot(year, lifeexp, data = subset(gapminder, country == input$country)) + xlim(1948, 2011) + ylim(10, 95) + theme_bw() }) } Gampinder Life Expectancy Selectcountry: Afghanistan choices <- sort(unique(gapminder$country)) ui <- fluidpage( titlepanel("gampinder Life Expectancy"), sidebarlayout( sidebarpanel( selectinput("country", label = "Select country: ", choices = choices, selected = "Afghanistan") ), mainpanel( plotoutput("countryplot", height = "500px") ) ) ) runapp(list(ui = ui, server = server))

39 Scaling Trelliscope We used the previous implementation of Trelliscope to visualize millions of subsets of terabytes of data Just because you can't look at all panels in a display doesn't mean it isn't useful or practical to make a large display - it's in fact beneficial because you get an unprecedented level of detail in your displays, and every corner of your data can be conceptually viewed One insight is all you need for a display to serve a purpose (provided it is quick to create)

40 What is needed to scale in the Tidyverse? SparklyR is the natural solution But we need a few things... SparklyR support for list-columns (nested data frames and arbitrary R objects) SparklyR support for remote procedure calls (run arbitrary R code on the data) Fast random access to rows of a SparklyR data frame A TrelliscopeJS deferred panel rendering scheme (render on-the-fly rather than all panels up front)

41 What's Next trelliscopejs Automatic cognostics: automatically compute useful cognostics based on the context of what is being plotted (e.g. if a scatterplot has a model fit superposed, add model diagnostics cognostics Automatic handling of axis limits - "same", "sliced", "free" (underway - currently "same" limits need to be hard-coded) When axes are "same", only show axes on plot margins instead of every panel (underway for ggplot2) trelliscopejs-lib More visual filters for cognostics (dates, geographic, bivariate relationships, etc.) Bookmarkable / sharable state View multiple panels side-by-side Support for receiving panels from other endpoints

42 For More Information Blog: Documentation: Github:

BUILDING WEB APPLICATIONS IN R WITH SHINY. Welcome to the course!

BUILDING WEB APPLICATIONS IN R WITH SHINY. Welcome to the course! BUILDING WEB APPLICATIONS IN R WITH SHINY Welcome to the course! Background You are familiar with R as a programming language. You are familiar with the Tidyverse, specifically ggplot2 and dplyr. Help

More information

ETC 2420/5242 Lab Di Cook Week 5

ETC 2420/5242 Lab Di Cook Week 5 ETC 2420/5242 Lab 5 2017 Di Cook Week 5 Purpose This lab is to practice fitting linear models. Reading Read the material on fitting regression models in Statistics online textbook, Diez, Barr, Cetinkaya-

More information

Rstudio GGPLOT2. Preparations. The first plot: Hello world! W2018 RENR690 Zihaohan Sang

Rstudio GGPLOT2. Preparations. The first plot: Hello world! W2018 RENR690 Zihaohan Sang Rstudio GGPLOT2 Preparations There are several different systems for creating data visualizations in R. We will introduce ggplot2, which is based on Leland Wilkinson s Grammar of Graphics. The learning

More information

Week 4. Big Data Analytics - data.frame manipulation with dplyr

Week 4. Big Data Analytics - data.frame manipulation with dplyr Week 4. Big Data Analytics - data.frame manipulation with dplyr Hyeonsu B. Kang hyk149@eng.ucsd.edu April 2016 1 Dplyr In the last lecture we have seen how to index an individual cell in a data frame,

More information

Tessera: Open Source Tools for Big Data Analysis in R

Tessera: Open Source Tools for Big Data Analysis in R Tessera: Open Source Tools for Big Data Analysis in R David Zeitler - Grand Valley State University Statistics August 12, 2015 Attribution This presentation is based work done for the June 30, 2015 user!

More information

An Introduction to R. Ed D. J. Berry 9th January 2017

An Introduction to R. Ed D. J. Berry 9th January 2017 An Introduction to R Ed D. J. Berry 9th January 2017 Overview Why now? Why R? General tips Recommended packages Recommended resources 2/48 Why now? Efficiency Pointandclick software just isn't time efficient

More information

R Lattice Graphics. Paul Murrell

R Lattice Graphics. Paul Murrell New URL: http://www.r-project.org/conferences/dsc-21/ DSC 21 Proceedings of the 2nd International Workshop on Distributed Statistical Computing March 15-17, Vienna, Austria http://www.ci.tuwien.ac.at/conferences/dsc-21

More information

Interactive Apps with Shiny INFO 201

Interactive Apps with Shiny INFO 201 Interactive Apps with Shiny INFO 201 Joel Ross Winter 2017 1 2 Deadlines This Week Tue 02/21 (today): Assignment 7 Thu 02/23: Project Proposal Fri 02/24: First Peer Evaluation Tue 02/28: Assignment 8 (individual)

More information

data visualization Show the Data Snow Month skimming deep waters

data visualization Show the Data Snow Month skimming deep waters data visualization skimming deep waters Show the Data Snow 2 4 6 8 12 Minimize Distraction Minimize Distraction Snow 2 4 6 8 12 2 4 6 8 12 Make Big Data Coherent Reveal Several Levels of Detail 1974 1975

More information

Explore a dataset with Shiny

Explore a dataset with Shiny BUILDING WEB APPLICATIONS IN R WITH SHINY: CASE STUDIES Explore a dataset with Shiny Dean Attali Shiny Consultant Explore a dataset with Shiny Dataset + Interactive environment + View data + Filter data

More information

The following presentation is based on the ggplot2 tutotial written by Prof. Jennifer Bryan.

The following presentation is based on the ggplot2 tutotial written by Prof. Jennifer Bryan. Graphics Agenda Grammer of Graphics Using ggplot2 The following presentation is based on the ggplot2 tutotial written by Prof. Jennifer Bryan. ggplot2 (wiki) ggplot2 is a data visualization package Created

More information

Divide & Recombine (D&R) with the DeltaRho D&R Software. D&R +δρ

Divide & Recombine (D&R) with the DeltaRho D&R Software. D&R +δρ 1 Divide & Recombine (D&R) with the DeltaRho D&R Software D&R +δρ http://deltarho.org Meet the statistical and computational challenges of deep analysis of big data and high computational complexity of

More information

The Average and SD in R

The Average and SD in R The Average and SD in R The Basics: mean() and sd() Calculating an average and standard deviation in R is straightforward. The mean() function calculates the average and the sd() function calculates the

More information

Stat 849: Plotting responses and covariates

Stat 849: Plotting responses and covariates Stat 849: Plotting responses and covariates Douglas Bates Department of Statistics University of Wisconsin, Madison 2010-09-03 Outline R Graphics Systems Brain weight Cathedrals Longshoots Domedata Summary

More information

Book 5. Chapter 1: Slides with SmartArt & Pictures... 1 Working with SmartArt Formatting Pictures Adjust Group Buttons Picture Styles Group Buttons

Book 5. Chapter 1: Slides with SmartArt & Pictures... 1 Working with SmartArt Formatting Pictures Adjust Group Buttons Picture Styles Group Buttons Chapter 1: Slides with SmartArt & Pictures... 1 Working with SmartArt Formatting Pictures Adjust Group Buttons Picture Styles Group Buttons Chapter 2: Slides with Charts & Shapes... 12 Working with Charts

More information

BUILDING WEB APPLICATIONS IN R WITH SHINY. Reactive elements

BUILDING WEB APPLICATIONS IN R WITH SHINY. Reactive elements BUILDING WEB APPLICATIONS IN R WITH SHINY Reactive elements Reactive objects Reactive sources and endpoints Reactive source: User input that comes through a browser interface, typically Reactive endpoint:

More information

Introducing R/Tidyverse to Clinical Statistical Programming

Introducing R/Tidyverse to Clinical Statistical Programming Introducing R/Tidyverse to Clinical Statistical Programming MBSW 2018 Freeman Wang, @freestatman 2018-05-15 Slides available at https://bit.ly/2knkalu Where are my biases Biomarker Statistician Genomic

More information

Stat 849: Plotting responses and covariates

Stat 849: Plotting responses and covariates Stat 849: Plotting responses and covariates Douglas Bates 10-09-03 Outline Contents 1 R Graphics Systems Graphics systems in R ˆ R provides three dierent high-level graphics systems base graphics The system

More information

Facets and Continuous graphs

Facets and Continuous graphs Facets and Continuous graphs One way to add additional variables is with aesthetics. Another way, particularly useful for categorical variables, is to split your plot into facets, subplots that each display

More information

Shiny: Part 1. The Johns Hopkins Data Science Lab. March 21, 2017

Shiny: Part 1. The Johns Hopkins Data Science Lab. March 21, 2017 Shiny: Part 1 The Johns Hopkins Data Science Lab March 21, 2017 What is Shiny? Shiny is a web application framework for R. Shiny allows you to create a graphical interface so that users can interact with

More information

Package autocogs. September 22, Title Automatic Cognostic Summaries Version 0.1.1

Package autocogs. September 22, Title Automatic Cognostic Summaries Version 0.1.1 Title Automatic Cognostic Summaries Version 0.1.1 Package autocogs September 22, 2018 Automatically calculates cognostic groups for plot objects and list column plot objects. Results are returned in a

More information

University of Florida CISE department Gator Engineering. Visualization

University of Florida CISE department Gator Engineering. Visualization Visualization Dr. Sanjay Ranka Professor Computer and Information Science and Engineering University of Florida What is visualization? Visualization is the process of converting data (information) in to

More information

Ggplot2 QMMA. Emanuele Taufer. 2/19/2018 Ggplot2 (1)

Ggplot2 QMMA. Emanuele Taufer. 2/19/2018 Ggplot2 (1) Ggplot2 QMMA Emanuele Taufer file:///c:/users/emanuele.taufer/google%20drive/2%20corsi/5%20qmma%20-%20mim/0%20classes/1-4_ggplot2.html#(1) 1/27 Ggplot2 ggplot2 is a plotting system for R, based on the

More information

Package gggenes. R topics documented: November 7, Title Draw Gene Arrow Maps in 'ggplot2' Version 0.3.2

Package gggenes. R topics documented: November 7, Title Draw Gene Arrow Maps in 'ggplot2' Version 0.3.2 Title Draw Gene Arrow Maps in 'ggplot2' Version 0.3.2 Package gggenes November 7, 2018 Provides a 'ggplot2' geom and helper functions for drawing gene arrow maps. Depends R (>= 3.3.0) Imports grid (>=

More information

SAS Visual Analytics 8.2: Working with Report Content

SAS Visual Analytics 8.2: Working with Report Content SAS Visual Analytics 8.2: Working with Report Content About Objects After selecting your data source and data items, add one or more objects to display the results. SAS Visual Analytics provides objects

More information

User manual forggsubplot

User manual forggsubplot User manual forggsubplot Garrett Grolemund September 3, 2012 1 Introduction ggsubplot expands the ggplot2 package to help users create multi-level plots, or embedded plots." Embedded plots embed subplots

More information

ggplot2 basics Hadley Wickham Assistant Professor / Dobelman Family Junior Chair Department of Statistics / Rice University September 2011

ggplot2 basics Hadley Wickham Assistant Professor / Dobelman Family Junior Chair Department of Statistics / Rice University September 2011 ggplot2 basics Hadley Wickham Assistant Professor / Dobelman Family Junior Chair Department of Statistics / Rice University September 2011 1. Diving in: scatterplots & aesthetics 2. Facetting 3. Geoms

More information

DSCI 325: Handout 26 Introduction to R Shiny Spring 2017

DSCI 325: Handout 26 Introduction to R Shiny Spring 2017 DSCI 325: Handout 26 Introduction to R Shiny Spring 2017 Shiny is an R package that allows users to build interactive web applications using R. Programming in Shiny is more involved than using the manipulate

More information

03 - Intro to graphics (with ggplot2)

03 - Intro to graphics (with ggplot2) 3 - Intro to graphics (with ggplot2) ST 597 Spring 217 University of Alabama 3-dataviz.pdf Contents 1 Intro to R Graphics 2 1.1 Graphics Packages................................ 2 1.2 Base Graphics...................................

More information

An Introduction to R Graphics

An Introduction to R Graphics An Introduction to R Graphics PnP Group Seminar 25 th April 2012 Why use R for graphics? Fast data exploration Easy automation and reproducibility Create publication quality figures Customisation of almost

More information

Data visualization with ggplot2

Data visualization with ggplot2 Data visualization with ggplot2 Visualizing data in R with the ggplot2 package Authors: Mateusz Kuzak, Diana Marek, Hedi Peterson, Dmytro Fishman Disclaimer We will be using the functions in the ggplot2

More information

The diamonds dataset Visualizing data in R with ggplot2

The diamonds dataset Visualizing data in R with ggplot2 Lecture 2 STATS/CME 195 Matteo Sesia Stanford University Spring 2018 Contents The diamonds dataset Visualizing data in R with ggplot2 The diamonds dataset The tibble package The tibble package is part

More information

Visualization Stages, Sensory vs. Arbitrary symbols, Data Characteristics, Visualization Goals. Trajectory Reminder

Visualization Stages, Sensory vs. Arbitrary symbols, Data Characteristics, Visualization Goals. Trajectory Reminder Visualization Stages, Sensory vs. Arbitrary symbols, Data Characteristics, Visualization Goals Russell M. Taylor II Slide 1 Trajectory Reminder Where we ve been recently Seen nm system that displays 2D-in-3D

More information

Stat405. Displaying distributions. Hadley Wickham. Thursday, August 23, 12

Stat405. Displaying distributions. Hadley Wickham. Thursday, August 23, 12 Stat405 Displaying distributions Hadley Wickham 1. The diamonds data 2. Histograms and bar charts 3. Homework Diamonds Diamonds data ~54,000 round diamonds from http://www.diamondse.info/ Carat, colour,

More information

Divide & Recombine for Large Complex Data (a.k.a. Big Data): Goals

Divide & Recombine for Large Complex Data (a.k.a. Big Data): Goals Divide & Recombine for Large Complex Data (a.k.a. Big Data): Goals 1 Provide the data analyst with statistical methods and a computational environment that enable deep study of large complex data. This

More information

Package ggsubplot. February 15, 2013

Package ggsubplot. February 15, 2013 Package ggsubplot February 15, 2013 Maintainer Garrett Grolemund License GPL Title Explore complex data by embedding subplots within plots. LazyData true Type Package Author Garrett

More information

Session 5 Nick Hathaway;

Session 5 Nick Hathaway; Session 5 Nick Hathaway; nicholas.hathaway@umassmed.edu Contents Adding Text To Plots 1 Line graph................................................. 1 Bar graph..................................................

More information

Operations Dashboard for ArcGIS Monitoring GIS Operations. Michele Lundeen Esri

Operations Dashboard for ArcGIS Monitoring GIS Operations. Michele Lundeen Esri Operations Dashboard for ArcGIS Monitoring GIS Operations Michele Lundeen Esri mlundeen@esri.com What is a dashboard? Conceptual term, can mean different things to different audiences Dashboards provide

More information

Data Visualization. Andrew Jaffe Instructor

Data Visualization. Andrew Jaffe Instructor Module 9 Data Visualization Andrew Jaffe Instructor Basic Plots We covered some basic plots previously, but we are going to expand the ability to customize these basic graphics first. 2/45 Read in Data

More information

Package d3heatmap. February 1, 2018

Package d3heatmap. February 1, 2018 Type Package Package d3heatmap February 1, 2018 Title Interactive Heat Maps Using 'htmlwidgets' and 'D3.js' Version 0.6.1.2 Date 2016-02-23 Maintainer ORPHANED Description Create interactive heat maps

More information

Introduction to Shiny

Introduction to Shiny Introduction to Shiny LondonR Workshop June 27 th 2018 Nicolas Attalides Data Scientist nattalides@mango-solutions.com WiFi Network Name: UCLGuest or use: guest.ucl.ac.uk/portal Go to self-service and

More information

Shiny Happy People: Using RShiny and SDTM Data to generate a Quick Interactive Dashboard

Shiny Happy People: Using RShiny and SDTM Data to generate a Quick Interactive Dashboard PharmaSUG 2018 - Paper HT-03 Shiny Happy People: Using RShiny and SDTM Data to generate a Quick Interactive Dashboard ABSTRACT Saranya Duraismy, Nate Mockler, Biogen This workshop will show how to use

More information

Subsetting, dplyr, magrittr Author: Lloyd Low; add:

Subsetting, dplyr, magrittr Author: Lloyd Low;  add: Subsetting, dplyr, magrittr Author: Lloyd Low; Email add: wai.low@adelaide.edu.au Introduction So you have got a table with data that might be a mixed of categorical, integer, numeric, etc variables? And

More information

Visualizing Data: Customization with ggplot2

Visualizing Data: Customization with ggplot2 Visualizing Data: Customization with ggplot2 Data Science 1 Stanford University, Department of Statistics ggplot2: Customizing graphics in R ggplot2 by RStudio s Hadley Wickham and Winston Chang offers

More information

Package shinyaframe. November 26, 2017

Package shinyaframe. November 26, 2017 Type Package Package shinyaframe November 26, 2017 Title 'WebVR' Data Visualizations with 'RStudio Shiny' and 'Mozilla A-Frame' Version 1.0.1 Description Make R data available in Web-based virtual reality

More information

Working with Charts Stratum.Viewer 6

Working with Charts Stratum.Viewer 6 Working with Charts Stratum.Viewer 6 Getting Started Tasks Additional Information Access to Charts Introduction to Charts Overview of Chart Types Quick Start - Adding a Chart to a View Create a Chart with

More information

Trellis Displays. Definition. Example. Trellising: Which plot is best? Historical Development. Technical Definition

Trellis Displays. Definition. Example. Trellising: Which plot is best? Historical Development. Technical Definition Trellis Displays The curse of dimensionality as described by Huber [6] is not restricted to mathematical statistical problems, but can be found in graphicbased data analysis as well. Most plots like histograms

More information

Introduction to Graphics with ggplot2

Introduction to Graphics with ggplot2 Introduction to Graphics with ggplot2 Reaction 2017 Flavio Santi Sept. 6, 2017 Flavio Santi Introduction to Graphics with ggplot2 Sept. 6, 2017 1 / 28 Graphics with ggplot2 ggplot2 [... ] allows you to

More information

Introduction to ggvis. Aimee Gott R Consultant

Introduction to ggvis. Aimee Gott R Consultant Introduction to ggvis Overview Recap of the basics of ggplot2 Getting started with ggvis The %>% operator Changing aesthetics Layers Interactivity Resources for the Workshop R (version 3.1.2) RStudio ggvis

More information

Package pairsd3. R topics documented: August 29, Title D3 Scatterplot Matrices Version 0.1.0

Package pairsd3. R topics documented: August 29, Title D3 Scatterplot Matrices Version 0.1.0 Title D3 Scatterplot Matrices Version 0.1.0 Package pairsd3 August 29, 2016 Creates an interactive scatterplot matrix using the D3 JavaScript library. See for more information on D3.

More information

Large data. Hadley Wickham. Assistant Professor / Dobelman Family Junior Chair Department of Statistics / Rice University.

Large data. Hadley Wickham. Assistant Professor / Dobelman Family Junior Chair Department of Statistics / Rice University. Large data Hadley Wickham Assistant Professor / Dobelman Family Junior Chair Department of Statistics / Rice University November 2010 1. The diamonds data 2. Histograms and bar charts 3. Frequency polygons

More information

An introduction to ggplot: An implementation of the grammar of graphics in R

An introduction to ggplot: An implementation of the grammar of graphics in R An introduction to ggplot: An implementation of the grammar of graphics in R Hadley Wickham 00-0-7 1 Introduction Currently, R has two major systems for plotting data, base graphics and lattice graphics

More information

Introduction to Shiny

Introduction to Shiny Introduction to Shiny LondonR Workshop November 21st 2017 Nick Howlett Data Scientist Email: nhowlett@mango-solutions.com WiFi The Cloud WiFi Workshop Aim Be able to develop a simple Shiny App with standard

More information

Bar Charts and Frequency Distributions

Bar Charts and Frequency Distributions Bar Charts and Frequency Distributions Use to display the distribution of categorical (nominal or ordinal) variables. For the continuous (numeric) variables, see the page Histograms, Descriptive Stats

More information

Collaborate in Qlik Sense. Qlik Sense February 2018 Copyright QlikTech International AB. All rights reserved.

Collaborate in Qlik Sense. Qlik Sense February 2018 Copyright QlikTech International AB. All rights reserved. Collaborate in Qlik Sense Qlik Sense February 2018 Copyright 1993-2018 QlikTech International AB. All rights reserved. Copyright 1993-2018 QlikTech International AB. All rights reserved. Qlik, QlikTech,

More information

plot(seq(0,10,1), seq(0,10,1), main = "the Title", xlim=c(1,20), ylim=c(1,20), col="darkblue");

plot(seq(0,10,1), seq(0,10,1), main = the Title, xlim=c(1,20), ylim=c(1,20), col=darkblue); R for Biologists Day 3 Graphing and Making Maps with Your Data Graphing is a pretty convenient use for R, especially in Rstudio. plot() is the most generalized graphing function. If you give it all numeric

More information

DATASTREAM CHART STUDIO GETTING STARTED

DATASTREAM CHART STUDIO GETTING STARTED DATASTREAM DATASTREAM CHART STUDIO GETTING STARTED Thomson Reuters Training Quick and easy access to Technical Analysis charts and data is essential in today s fast moving markets. The Datastream Chart

More information

Up Diagonal. Right. Question No. 1 (60 points)

Up Diagonal. Right. Question No. 1 (60 points) CSCI 1101 Computer Science II Assignment No. 1 Date Given: Monday, January 23, 2017 Due: Monday, February 6, 2017, 11.55 p.m. Submission: On Brightspace (dal.ca/brightspace) Welcome to your first programming

More information

Introduction to R for Beginners, Level II. Jeon Lee Bio-Informatics Core Facility (BICF), UTSW

Introduction to R for Beginners, Level II. Jeon Lee Bio-Informatics Core Facility (BICF), UTSW Introduction to R for Beginners, Level II Jeon Lee Bio-Informatics Core Facility (BICF), UTSW Basics of R Powerful programming language and environment for statistical computing Useful for very basic analysis

More information

Virto SharePoint Forms Designer for Office 365. Installation and User Guide

Virto SharePoint Forms Designer for Office 365. Installation and User Guide Virto SharePoint Forms Designer for Office 365 Installation and User Guide 2 Table of Contents KEY FEATURES... 3 SYSTEM REQUIREMENTS... 3 INSTALLING VIRTO SHAREPOINT FORMS FOR OFFICE 365...3 LICENSE ACTIVATION...4

More information

Intro to R for Epidemiologists

Intro to R for Epidemiologists Lab 9 (3/19/15) Intro to R for Epidemiologists Part 1. MPG vs. Weight in mtcars dataset The mtcars dataset in the datasets package contains fuel consumption and 10 aspects of automobile design and performance

More information

Collaborate in Qlik Sense. Qlik Sense April 2018 Copyright QlikTech International AB. All rights reserved.

Collaborate in Qlik Sense. Qlik Sense April 2018 Copyright QlikTech International AB. All rights reserved. Collaborate in Qlik Sense Qlik Sense April 2018 Copyright 1993-2018 QlikTech International AB. All rights reserved. Copyright 1993-2018 QlikTech International AB. All rights reserved. Qlik, QlikTech, Qlik

More information

A Whistle-Stop Tour of the Tidyverse

A Whistle-Stop Tour of the Tidyverse A Whistle-Stop Tour of the Tidyverse Aimee Gott Senior Consultant agott@mango-solutions.com @aimeegott_r In This Workshop You will learn What the tidyverse is & why bother using it What tools are available

More information

Data Mining: Exploring Data. Lecture Notes for Chapter 3

Data Mining: Exploring Data. Lecture Notes for Chapter 3 Data Mining: Exploring Data Lecture Notes for Chapter 3 1 What is data exploration? A preliminary exploration of the data to better understand its characteristics. Key motivations of data exploration include

More information

Kendo UI Builder by Progress : Using Kendo UI Designer

Kendo UI Builder by Progress : Using Kendo UI Designer Kendo UI Builder by Progress : Using Kendo UI Designer Notices 2016 Telerik AD. All rights reserved. November 2016 Last updated with new content: Version 1.1 3 Notices 4 Contents Table of Contents Chapter

More information

Data Visualization. Module 7

Data Visualization.  Module 7 Data Visualization http://datascience.tntlab.org Module 7 Today s Agenda A Brief Reminder to Update your Software A walkthrough of ggplot2 Big picture New cheatsheet, with some familiar caveats Geometric

More information

Visualization as an Analysis Tool: Presentation Supplement

Visualization as an Analysis Tool: Presentation Supplement Visualization as an Analysis Tool: Presentation Supplement This document is a supplement to the presentation Visualization as an Analysis Tool given by Phil Groce and Jeff Janies on January 9, 2008 as

More information

Shape and Line Tools. tip: Some drawing techniques are so much easier if you use a pressuresensitive

Shape and Line Tools. tip: Some drawing techniques are so much easier if you use a pressuresensitive 4Drawing with Shape and Line Tools Illustrator provides tools for easily creating lines and shapes. Drawing with shapes (rectangles, ellipses, stars, etc.) can be a surprisingly creative and satisfying

More information

Creating Universally Designed Word 2013 Documents - Quick Start Guide

Creating Universally Designed Word 2013 Documents - Quick Start Guide Creating Universally Designed Word 2013 Documents - Quick Start Guide Overview Creating accessible documents ones that work well with all sorts of technology can be a daunting task. The purpose of this

More information

Interface, Design, and Computational Considerations for Divide and Recombine

Interface, Design, and Computational Considerations for Divide and Recombine Interface Symposium June 12, 2015 Interface, Design, and Computational Considerations for Divide and Recombine Ryan Hafen @hafenstats Hafen Consulting, Purdue University Image reproduced with permission

More information

Modeling in the Tidyverse. Max Kuhn (RStudio)

Modeling in the Tidyverse. Max Kuhn (RStudio) Modeling in the Tidyverse Max Kuhn (RStudio) Modeling in R R has always had a rich set of modeling tools that it inherited from S. For example, the formula interface has made it simple to specify potentially

More information

separate representations of data.

separate representations of data. 1 It s been said that there are two kinds of people in the world: those who divide everything into two groups, and those who don t. To taxonomists, these folks are commonly known as lumpers and splitters.

More information

Data Mining: Exploring Data. Lecture Notes for Chapter 3. Introduction to Data Mining

Data Mining: Exploring Data. Lecture Notes for Chapter 3. Introduction to Data Mining Data Mining: Exploring Data Lecture Notes for Chapter 3 Introduction to Data Mining by Tan, Steinbach, Kumar What is data exploration? A preliminary exploration of the data to better understand its characteristics.

More information

How to Create Greeting Cards using LibreOffice Draw

How to Create Greeting Cards using LibreOffice Draw by Len Nasman, Bristol Village Ohio Computer Club If you want to create your own greeting cards, but you do not want to spend a lot of money on special software, you are in luck. It turns out that with

More information

Data Classes. Introduction to R for Public Health Researchers

Data Classes. Introduction to R for Public Health Researchers Data Classes Introduction to R for Public Health Researchers Data Types: One dimensional types ( vectors ): - Character: strings or individual characters, quoted - Numeric: any real number(s) - Integer:

More information

Exploratory Data Analysis September 6, 2005

Exploratory Data Analysis September 6, 2005 Exploratory Data Analysis September 6, 2005 Exploratory Data Analysis p. 1/16 Somethings to Look for with EDA skewness in distributions non-constant variability nonlinearity need for transformations outliers

More information

Tableau Advanced Training. Student Guide April x. For Evaluation Only

Tableau Advanced Training. Student Guide April x. For Evaluation Only Tableau Advanced Training Student Guide www.datarevelations.com 914.945.0567 April 2017 10.x Contents A. Warm Up 1 Bar Chart Colored by Profit 1 Salary Curve 2 2015 v s. 2014 Sales 3 VII. Programmatic

More information

Exploratory Data Analysis EDA

Exploratory Data Analysis EDA Exploratory Data Analysis EDA Luc Anselin http://spatial.uchicago.edu 1 from EDA to ESDA dynamic graphics primer on multivariate EDA interpretation and limitations 2 From EDA to ESDA 3 Exploratory Data

More information

Visual Computing. Lecture 2 Visualization, Data, and Process

Visual Computing. Lecture 2 Visualization, Data, and Process Visual Computing Lecture 2 Visualization, Data, and Process Pipeline 1 High Level Visualization Process 1. 2. 3. 4. 5. Data Modeling Data Selection Data to Visual Mappings Scene Parameter Settings (View

More information

New and Improved Formula Editor in JMP 13

New and Improved Formula Editor in JMP 13 These are the step-by-step instructions for the 'New and Improved Formula Editor in JMP 13' demo. This contains talking points and also the demo steps. Demo instructions are underlined and in bold to highlight

More information

Data Mining: Exploring Data. Lecture Notes for Data Exploration Chapter. Introduction to Data Mining

Data Mining: Exploring Data. Lecture Notes for Data Exploration Chapter. Introduction to Data Mining Data Mining: Exploring Data Lecture Notes for Data Exploration Chapter Introduction to Data Mining by Tan, Steinbach, Karpatne, Kumar 02/03/2018 Introduction to Data Mining 1 What is data exploration?

More information

The Observatory Tool Dashboard Guide

The Observatory Tool Dashboard Guide To paraphrase Donella Meadows, we can't impose our will on Internet. We can listen to what Internet tells us, and discover how its properties and our values can work together to bring forth something much

More information

Package arulesviz. April 24, 2018

Package arulesviz. April 24, 2018 Package arulesviz April 24, 2018 Version 1.3-1 Date 2018-04-23 Title Visualizing Association Rules and Frequent Itemsets Depends arules (>= 1.4.1), grid Imports scatterplot3d, vcd, seriation, igraph (>=

More information

Creating Shiny Apps in R for Sharing Automated Statistical Products

Creating Shiny Apps in R for Sharing Automated Statistical Products U.S. ARMY EVALUATION CENTER Creating Shiny Apps in R for Sharing Automated Statistical Products Randy Griffiths Goal 1. Understand basic structure of Shiny app code 2. Produce simple apps 3. Feel confident

More information

Data Wrangling in the Tidyverse

Data Wrangling in the Tidyverse Data Wrangling in the Tidyverse 21 st Century R DS Portugal Meetup, at Farfetch, Porto, Portugal April 19, 2017 Jim Porzak Data Science for Customer Insights 4/27/2017 1 Outline 1. A very quick introduction

More information

Notes - CSS - Flexbox

Notes - CSS - Flexbox Notes - CSS - Flexbox Dr Nick Hayward A general intro and outline for using flexbox with HTML5 compatible apps. Contents intro basic usage axes flex direction flex item wrapping flex-flow shorthand sizing

More information

Computer Applications Final Exam Study Guide

Computer Applications Final Exam Study Guide Name: Computer Applications Final Exam Study Guide Microsoft Word 1. To use -and-, position the pointer on top of the selected text, and then drag the selected text to the new location. 2. The Clipboard

More information

Graphing. ReportMill Graphing User Guide. This document describes ReportMill's graph component. Graphs are the best way to present data visually.

Graphing. ReportMill Graphing User Guide. This document describes ReportMill's graph component. Graphs are the best way to present data visually. ReportMill User Guide This document describes ReportMill's graph component. Graphs are the best way to present data visually. Table of Contents 0 Creating a Graph Component 0 Master Graph Inspector 0 Graph

More information

SAS Visual Analytics 8.2: Getting Started with Reports

SAS Visual Analytics 8.2: Getting Started with Reports SAS Visual Analytics 8.2: Getting Started with Reports Introduction Reporting The SAS Visual Analytics tools give you everything you need to produce and distribute clear and compelling reports. SAS Visual

More information

NetAdvantage for jquery SR Release Notes

NetAdvantage for jquery SR Release Notes NetAdvantage for jquery 2012.1 SR Release Notes Create the best Web experiences in browsers and devices with our user interface controls designed expressly for jquery, ASP.NET MVC, HTML 5 and CSS 3. You

More information

Survey of Math: Excel Spreadsheet Guide (for Excel 2016) Page 1 of 9

Survey of Math: Excel Spreadsheet Guide (for Excel 2016) Page 1 of 9 Survey of Math: Excel Spreadsheet Guide (for Excel 2016) Page 1 of 9 Contents 1 Introduction to Using Excel Spreadsheets 2 1.1 A Serious Note About Data Security.................................... 2 1.2

More information

Statistical transformations

Statistical transformations Statistical transformations Next, let s take a look at a bar chart. Bar charts seem simple, but they are interesting because they reveal something subtle about plots. Consider a basic bar chart, as drawn

More information

Creating and Managing Your Personal Mines Website on WordPress

Creating and Managing Your Personal Mines Website on WordPress Creating and Managing Your Personal Mines Website on WordPress Table of Contents Creating your site... 2 Managing your site... 2 About WordPress... 2 Logging in... 2 Pages... 2 Editing an Existing Page...

More information

An Experiment in Visual Clustering Using Star Glyph Displays

An Experiment in Visual Clustering Using Star Glyph Displays An Experiment in Visual Clustering Using Star Glyph Displays by Hanna Kazhamiaka A Research Paper presented to the University of Waterloo in partial fulfillment of the requirements for the degree of Master

More information

social data science Data Visualization Sebastian Barfort August 08, 2016 University of Copenhagen Department of Economics 1/86

social data science Data Visualization Sebastian Barfort August 08, 2016 University of Copenhagen Department of Economics 1/86 social data science Data Visualization Sebastian Barfort August 08, 2016 University of Copenhagen Department of Economics 1/86 Who s ahead in the polls? 2/86 What values are displayed in this chart? 3/86

More information

MEASURING WELLBEING EMPIRICAL PROJECT 4. Key concepts. LEARNING OBJECTIVES In this project you will:

MEASURING WELLBEING EMPIRICAL PROJECT 4. Key concepts. LEARNING OBJECTIVES In this project you will: EMPIRICAL PROJECT 4 MEASURING WELLBEING LEARNING OBJECTIVES In this project you will: check datasets for missing data sort data and assign ranks based on values distinguish between time series and cross

More information

Eurostat Regions and Cities Illustrated: Usage guide

Eurostat Regions and Cities Illustrated: Usage guide Eurostat Regions and Cities Illustrated: Usage guide With Regions and Cities Illustrated, you can easily visualise regional indicators and view data for regions you are most interested in. This interactive

More information

Package colourpicker

Package colourpicker Type Package Package colourpicker September 27, 2017 Title A Colour Picker Tool for Shiny and for Selecting Colours in Plots Version 1.0 A colour picker that can be used as an input in Shiny apps or Rmarkdown

More information

K-fold cross validation in the Tidyverse Stephanie J. Spielman 11/7/2017

K-fold cross validation in the Tidyverse Stephanie J. Spielman 11/7/2017 K-fold cross validation in the Tidyverse Stephanie J. Spielman 11/7/2017 Requirements This demo requires several packages: tidyverse (dplyr, tidyr, tibble, ggplot2) modelr broom proc Background K-fold

More information

Types of Plotting Functions. Managing graphics devices. Further High-level Plotting Functions. The plot() Function

Types of Plotting Functions. Managing graphics devices. Further High-level Plotting Functions. The plot() Function 3 / 23 5 / 23 Outline The R Statistical Environment R Graphics Peter Dalgaard Department of Biostatistics University of Copenhagen January 16, 29 1 / 23 2 / 23 Overview Standard R Graphics The standard

More information