SlideShare una empresa de Scribd logo
1 de 70
Descargar para leer sin conexión
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Data Visualization: Shiny Application
Olga Scrivner
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Outline
1. Introduction to web applications
2. Reactive Shiny and R framework
3. Shiny application demo - ITMS
4. Practice
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Imperative Web Frameworks
Traditional Model-View-Control
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Imperative Web Frameworks
Traditional Model-View-Control
“The controller is essential and explicit: you have to specify
what to do when you receive user requests and what resources you
are going to mobilize to carry out the necessary tasks outlined in
the model” (Ribeiro 2016)
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Reactive Web Framework
“Reactive Systems are highly responsive, giving users
effective interactive feedback”
http://www.reactivemanifesto.org/
http://littleactuary.github.io/blog/Web-application-framework-with-Shiny/
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Reactive Architecture
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Reactive Framework and Data Science
“The impact of data scientists’ work depends on how well
others can understand their insights to take further actions”
Benefit 1: Interactive display and manipulation of data
Benefit 2: No installation required
Benefit 3: Easy to develop and share with clients and
project teams
Benefit 4: Open source library
http://datascience.ibm.com/blog/shiny-a-data-scientist-best-friend/
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Shiny Application
1. Shiny is an R package for building interactive web
applications
2. Open-Sourced by RStudio 11/2012 on CRAN
3. Uses web sockets (new HTTP):
Interactive communication sessions between the user’s
browser and a server without having to poll the server
for a reply
4. Entirely extensible - custom input/output
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
R: Historical Background
R - an implementation of S programming language
In 1970s John Chambers, Rick Becker, and Allan Wilks
develop S and S+ at Bell Labs
Bell System monopoly was broken up in 1982
Late 80s some attempt to commercialize S/S+ but
already too many non-commercial implementations
Ross Ihaka and Robert Gentleman produce R in early
1990s
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Shiny Library
http://littleactuary.github.io/blog/Web-application-framework-with-Shiny/
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Shiny Gallery - Get Inspired
https://www.rstudio.com/products/shiny/shiny-user-showcase/
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Interactive Text Mining Suite (Scrivner et al.
2016)
1. Web application for text processing and mining
2. Interactive natural language processing techniques
Wordstops, stemming, text-preprocessing
3. High customization
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Accessibility
PC, Mac, Linux, Smart Phones
Chrome, Firefox, Safari
ITMS Web site:
http://www.interactivetextminingsuite.com
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
ITMS Structure
1. File Uploads
Upload files (txt, pdf, rdf, Google books API)
2. Data Preparation
Data preprocessing (stopwords, stemming, metadata)
3. Data Visualization
Word frequencies, cluster analysis, topic modeling
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Stopwords
Stopwords (e.g. the, and):
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Manual Removal of Stopwords
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Stemming
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Word Cloud Representation
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Customization
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Topic Modeling
Discovering underlying theme of collection from Science magazine
1990-2000 (Blei 2012)
LDA (Latent Dirichlet allocation)
STM (Structural Topic model)
Chronological topic visualization (lda): requires
metadata
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Topic Modeling Tuning
Selection of topics (how many different themes)
Selection of words per theme (how many words per
topic)
Selection of iteration
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Using Google Books API
Select your search terms and submit
Current limitation is 40 books
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Workshop Materials
1. Rstudio
2. R
3. Shiny library
4. Some ideas are from http://deanattali.com/blog/
building-shiny-apps-tutorial/
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
R software
R is a free software for data analysis, text mining and
visualization.
To install R on Window:
1. Download the binary file for R
https://cran.r-project.org/bin/windows/base/
R-3.3.1-win.exe
2. Open the downloaded .exe file and Install R
To install R on Mac:
1. Download the appropriate version of .pkg file
https://cran.r-project.org/bin/macosx/
2. Open the downloaded .pkg file and Install R
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
R Studio
RStudio is a free user interface for R.
1. Install the appropriate RStudio version https:
//www.rstudio.com/products/rstudio/download/
2. Run it to install R-studio
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
R Studio Structure
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Installing Packages
In your bottom left window - go to Packages
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Selecting Packages - shiny
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Creating Scripts
Create R File: File → New File → R Script
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Execution - RUN
To execute your commands you need to click run
Type in the script and run:
library(shiny)
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Shiny Demo
runExample("01 hello")
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Shiny Demo
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Shiny Demo
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
UI.R
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Reactive Input/Output
Input - things user can toggle
Output - R objects that user can see, often depend on
inputs
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Closing App
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Step 1 - Create New Web Shiny App
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Step 2 - Run App
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
UI
shinyUI(fluidPage(
# Application title
titlePanel("Old Faithful Geyser Data"),
# Sidebar with a slider input for number of bins
sidebarLayout(
sidebarPanel(
sliderInput("bins",
"Number of bins:",
min = 1,
max = 50,
value = 30)
),
# Show a plot of the generated distribution
mainPanel(
plotOutput("distPlot")
)
)
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Modifying UI - Practice
1. Change Title
2. Change Bins values: min, max and value
3. Save
4. RunApp
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
HTML
The UI script simply creates HTML
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
HTML
HTML tags:
http:
//shiny.rstudio.com/articles/tag-glossary.html
h1() = header1
br() = line break
p() = paragraph
hr() = line
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Adding HTML Tag to UI.R - Practice
shinyUI(fluidPage(
# Application title
titlePanel("My Title"),
h3("My subtitle"),
p("This is my first app!"),
br(),
hr(),
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Adding HTML Tag to UI.R - Practice
shinyUI(fluidPage(
# Application title
titlePanel("My Title"),
h3("My subtitle"),
p("This is my first app!"),
br(),
hr(),
RunApp
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Layout
http:
//shiny.rstudio.com/articles/layout-guide.html
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
mainPanel
mainPanel( plotOutput(”distPlot”))
Let’s add 3 tab panels: Plot, Summary, Tabel
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
tabsetPanel
mainPanel(
tabsetPanel(
tabPanel("Plot", plotOutput("distPlot")),
tabPanel("Summary"),
tabPanel("Table")
)
)
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
tabsetPanel
mainPanel(
tabsetPanel(
tabPanel("Plot", plotOutput("distPlot")),
tabPanel("Summary"),
tabPanel("Table")
)
)
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Input Data
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Input Data
1. Blog https:
//languagevariationsuite.wordpress.com/
2. Download csv file - movie metadata.csv
3. Place this file into the directory myshiny
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
New Input in UI.R
We will add fileInput function inside sidebarPanel:
NB: commas are important!
sidebarPanel(
sliderInput(.......),
fileInput()
)
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
New Input in UI.R
fileInput(’file1’, ’Choose CSV File’,
multiple=FALSE,
accept=c(’text/csv’,
’text/comma-separated-values,text/plain’,
’.csv’)
)
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Reactive Function in Sever.R
myfile <- reactive({
if (is.null(input$file1)){return()}
mydata <- read.csv(input$file1$datapath,
header=TRUE, sep=’,’)
return(mydata)
})
To use reactive data we will pass myfile() content to output
functions
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
New Output Function summary in Server.R
output$summary <- renderPrint({
summary(myfile())
})
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
New Output Function table in Server.R
output$table <- renderDataTable({
myfile()
})
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Linking summary and table with UI.R
tabsetPanel(
tabPanel("Plot", plotOutput("distPlot")),
tabPanel("Summary", verbatimTextOutput("summary")),
tabPanel("Table", dataTableOutput("table"))
)
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Linking summary and table with UI.R
tabsetPanel(
tabPanel("Plot", plotOutput("distPlot")),
tabPanel("Summary", verbatimTextOutput("summary")),
tabPanel("Table", dataTableOutput("table"))
)
RunApp
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Testing CSV Upload
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
One more IF-Statement - Server.R
We want to do a histogram for csv file:
if (condition) {do..} else {do...}
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
One more IF-Statement - Server.R
We want to do a histogram for csv file:
if (condition) {do..} else {do...}
output$distPlot <- renderPlot({
if (is.null(input$file1)) {
....
hist(x, breaks = bins, col = ’darkgray’, border =
’white’)
}
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
One more IF-Statement - Server.R
We want to do a histogram for csv file:
if (condition) {do..} else {do...}
output$distPlot <- renderPlot({
if (is.null(input$file1)) {
....
hist(x, breaks = bins, col = ’darkgray’, border =
’white’)
}
else{
x <- myfile()$budget
bins <- seq(min(x), max(x), length.out = input$bins
+ 1)
hist(x, breaks = bins, col=’red’,
main = ’My New Histogram’)
}
})
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
RunApp
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Deployment Options
1. Share server.r and ui.r
2. Host on shinyapps.io
3. Host on Shiny server
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Deploy with shinyapps.io
www.shinyapps.io
sign up for an account.
Publish Application button in RStudio and follow
instructions
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Deploy with shinyapps.io
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
My shinyapps.io
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
My shinyapps.io
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Useful resources
1. Shiny official tutorial -
http://shiny.rstudio.com/tutorial
2. Cheat sheet - http://shiny.rstudio.com/images/
shiny-cheatsheet.pdf
3. Publish your app free - http://www.shinyapps.io
4. Examples -http://www.showmeshiny.com/
5. Tutorial by Dean Attali - http://deanattali.com/
blog/building-shiny-apps-tutorial/
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Thank you!
My email: obscrivn@indiana.edu
Data Visualization:
Shiny Application
Olga Scrivner
Web Framework
Shiny App
Practice Demo
Credits
https://github.com/IBMDataScience/dsx-shiny-apps
http://www.slideshare.net/SarahAerni/
data-science-as-a-commodity-use-madlib-r-other-oss-tools-for-data-
http://www.unixstickers.com/image/data/stickers/
react/badge/React-JS.sh.png
https://github.com/rstudio/shiny/issues/250
http://www.slideshare.net/ilio-catallo/
spring-mvc-the-basics

Más contenido relacionado

La actualidad más candente

Workshop: Data Visualization for Corpus Linguistics via Shiny Framework
Workshop: Data Visualization for Corpus Linguistics via Shiny FrameworkWorkshop: Data Visualization for Corpus Linguistics via Shiny Framework
Workshop: Data Visualization for Corpus Linguistics via Shiny FrameworkOlga Scrivner
 
Angular2 + Ng-Lightning + Lightning Design System = Great Apps
Angular2 + Ng-Lightning + Lightning Design System = Great AppsAngular2 + Ng-Lightning + Lightning Design System = Great Apps
Angular2 + Ng-Lightning + Lightning Design System = Great AppsEmily Hurn
 
Angular2 + New Firebase in Action
Angular2 + New Firebase in ActionAngular2 + New Firebase in Action
Angular2 + New Firebase in ActionRuben Chavarri
 
Angular kickstart slideshare
Angular kickstart   slideshareAngular kickstart   slideshare
Angular kickstart slideshareSaleemMalik52
 
Android L08 - Google Maps and Utilities
Android L08 - Google Maps and UtilitiesAndroid L08 - Google Maps and Utilities
Android L08 - Google Maps and UtilitiesMohammad Shaker
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2Naveen Pete
 
Angular 10 course_content
Angular 10 course_contentAngular 10 course_content
Angular 10 course_contentNAVEENSAGGAM1
 
Getting Started with Developing for the Apple Watch
Getting Started with Developing for the Apple WatchGetting Started with Developing for the Apple Watch
Getting Started with Developing for the Apple WatchMurtza Manzur
 
Quick introduction to Angular 4 for AngularJS 1.5 developers
Quick introduction to Angular 4 for AngularJS 1.5 developersQuick introduction to Angular 4 for AngularJS 1.5 developers
Quick introduction to Angular 4 for AngularJS 1.5 developersPaweł Żurowski
 
Getting Started With Developing For Apple Watch
Getting Started With Developing For Apple WatchGetting Started With Developing For Apple Watch
Getting Started With Developing For Apple WatchInMobi
 
Angular App Presentation
Angular App PresentationAngular App Presentation
Angular App PresentationElizabeth Long
 
Progressive Web Application by Citytech
Progressive Web Application by CitytechProgressive Web Application by Citytech
Progressive Web Application by CitytechRitwik Das
 
React App State Management with react hooks and context api
React App State Management with react hooks and context apiReact App State Management with react hooks and context api
React App State Management with react hooks and context apiJan Ranostaj
 
Angular 6 - The Complete Guide
Angular 6 - The Complete GuideAngular 6 - The Complete Guide
Angular 6 - The Complete GuideSam Dias
 
Introduction to angular 2
Introduction to angular 2Introduction to angular 2
Introduction to angular 2Dor Moshe
 
Introduction To Angular 4 - J2I
Introduction To Angular 4 - J2IIntroduction To Angular 4 - J2I
Introduction To Angular 4 - J2INader Debbabi
 
How to build integrated, professional enterprise-grade cross-platform mobile ...
How to build integrated, professional enterprise-grade cross-platform mobile ...How to build integrated, professional enterprise-grade cross-platform mobile ...
How to build integrated, professional enterprise-grade cross-platform mobile ...Appear
 
Introduction to angular 2
Introduction to angular 2Introduction to angular 2
Introduction to angular 2Dhyego Fernando
 
Angular 4 Introduction Tutorial
Angular 4 Introduction TutorialAngular 4 Introduction Tutorial
Angular 4 Introduction TutorialScott Lee
 

La actualidad más candente (20)

Workshop: Data Visualization for Corpus Linguistics via Shiny Framework
Workshop: Data Visualization for Corpus Linguistics via Shiny FrameworkWorkshop: Data Visualization for Corpus Linguistics via Shiny Framework
Workshop: Data Visualization for Corpus Linguistics via Shiny Framework
 
Angular2 + Ng-Lightning + Lightning Design System = Great Apps
Angular2 + Ng-Lightning + Lightning Design System = Great AppsAngular2 + Ng-Lightning + Lightning Design System = Great Apps
Angular2 + Ng-Lightning + Lightning Design System = Great Apps
 
Angular2 + New Firebase in Action
Angular2 + New Firebase in ActionAngular2 + New Firebase in Action
Angular2 + New Firebase in Action
 
Angular kickstart slideshare
Angular kickstart   slideshareAngular kickstart   slideshare
Angular kickstart slideshare
 
Android L08 - Google Maps and Utilities
Android L08 - Google Maps and UtilitiesAndroid L08 - Google Maps and Utilities
Android L08 - Google Maps and Utilities
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2
 
Angular 10 course_content
Angular 10 course_contentAngular 10 course_content
Angular 10 course_content
 
Getting Started with Developing for the Apple Watch
Getting Started with Developing for the Apple WatchGetting Started with Developing for the Apple Watch
Getting Started with Developing for the Apple Watch
 
Quick introduction to Angular 4 for AngularJS 1.5 developers
Quick introduction to Angular 4 for AngularJS 1.5 developersQuick introduction to Angular 4 for AngularJS 1.5 developers
Quick introduction to Angular 4 for AngularJS 1.5 developers
 
Getting Started With Developing For Apple Watch
Getting Started With Developing For Apple WatchGetting Started With Developing For Apple Watch
Getting Started With Developing For Apple Watch
 
Angular App Presentation
Angular App PresentationAngular App Presentation
Angular App Presentation
 
Progressive Web Application by Citytech
Progressive Web Application by CitytechProgressive Web Application by Citytech
Progressive Web Application by Citytech
 
React App State Management with react hooks and context api
React App State Management with react hooks and context apiReact App State Management with react hooks and context api
React App State Management with react hooks and context api
 
Angular 6 - The Complete Guide
Angular 6 - The Complete GuideAngular 6 - The Complete Guide
Angular 6 - The Complete Guide
 
Lecture 32
Lecture 32Lecture 32
Lecture 32
 
Introduction to angular 2
Introduction to angular 2Introduction to angular 2
Introduction to angular 2
 
Introduction To Angular 4 - J2I
Introduction To Angular 4 - J2IIntroduction To Angular 4 - J2I
Introduction To Angular 4 - J2I
 
How to build integrated, professional enterprise-grade cross-platform mobile ...
How to build integrated, professional enterprise-grade cross-platform mobile ...How to build integrated, professional enterprise-grade cross-platform mobile ...
How to build integrated, professional enterprise-grade cross-platform mobile ...
 
Introduction to angular 2
Introduction to angular 2Introduction to angular 2
Introduction to angular 2
 
Angular 4 Introduction Tutorial
Angular 4 Introduction TutorialAngular 4 Introduction Tutorial
Angular 4 Introduction Tutorial
 

Destacado

Data Visualization 101: How to Design Charts and Graphs
Data Visualization 101: How to Design Charts and GraphsData Visualization 101: How to Design Charts and Graphs
Data Visualization 101: How to Design Charts and GraphsVisage
 
Data Visualization - HorizonWatch 2015 Trend Report
Data Visualization - HorizonWatch 2015 Trend Report Data Visualization - HorizonWatch 2015 Trend Report
Data Visualization - HorizonWatch 2015 Trend Report Bill Chamberlin
 
The Importance of Data Visualization
The Importance of Data VisualizationThe Importance of Data Visualization
The Importance of Data VisualizationCenterline Digital
 
From Data to Visualization, what happens in between?
From Data to Visualization, what happens in between?From Data to Visualization, what happens in between?
From Data to Visualization, what happens in between?Krist Wongsuphasawat
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with DataSeth Familian
 
Shiny r, live shared and explored
Shiny   r, live shared and exploredShiny   r, live shared and explored
Shiny r, live shared and exploredAlex Brown
 
Introducing R Shiny and R notebook: R collaborative tools
Introducing R Shiny and R notebook: R collaborative toolsIntroducing R Shiny and R notebook: R collaborative tools
Introducing R Shiny and R notebook: R collaborative toolsXavier Prudent
 
Shinyで確率分布を学ぶアプリ作った。あるいは、ShinyでD3.jsを使う方法
Shinyで確率分布を学ぶアプリ作った。あるいは、ShinyでD3.jsを使う方法Shinyで確率分布を学ぶアプリ作った。あるいは、ShinyでD3.jsを使う方法
Shinyで確率分布を学ぶアプリ作った。あるいは、ShinyでD3.jsを使う方法ksmzn
 
Integrating R, knitr, and LaTeX via RStudio
Integrating R, knitr, and LaTeX via RStudioIntegrating R, knitr, and LaTeX via RStudio
Integrating R, knitr, and LaTeX via RStudioAaron Baggett
 
R Markdown Tutorial For Beginners
R Markdown Tutorial For BeginnersR Markdown Tutorial For Beginners
R Markdown Tutorial For BeginnersRsquared Academy
 
Benefits of data visualization
Benefits of data visualizationBenefits of data visualization
Benefits of data visualizationinfographic_art
 
Data Visualization Techniques
Data Visualization TechniquesData Visualization Techniques
Data Visualization TechniquesAllAnalytics
 
R visualization: ggplot2, googlevis, plotly, igraph Overview
R visualization: ggplot2, googlevis, plotly, igraph OverviewR visualization: ggplot2, googlevis, plotly, igraph Overview
R visualization: ggplot2, googlevis, plotly, igraph OverviewOlga Scrivner
 
Big Data visualization with Apache Spark and Zeppelin
Big Data visualization with Apache Spark and ZeppelinBig Data visualization with Apache Spark and Zeppelin
Big Data visualization with Apache Spark and Zeppelinprajods
 
Data visualization for development
Data visualization for developmentData visualization for development
Data visualization for developmentSara-Jayne Terp
 
White paper data center critical infrastructure risk and vulnerabilities
White paper   data center critical infrastructure risk and vulnerabilitiesWhite paper   data center critical infrastructure risk and vulnerabilities
White paper data center critical infrastructure risk and vulnerabilitiesSkylogica
 
UC Analytics Brochure
UC Analytics BrochureUC Analytics Brochure
UC Analytics BrochureCode Software
 

Destacado (20)

Data Visualization 101: How to Design Charts and Graphs
Data Visualization 101: How to Design Charts and GraphsData Visualization 101: How to Design Charts and Graphs
Data Visualization 101: How to Design Charts and Graphs
 
Building powerful dashboards with r shiny
Building powerful dashboards with r shinyBuilding powerful dashboards with r shiny
Building powerful dashboards with r shiny
 
Data Visualization - HorizonWatch 2015 Trend Report
Data Visualization - HorizonWatch 2015 Trend Report Data Visualization - HorizonWatch 2015 Trend Report
Data Visualization - HorizonWatch 2015 Trend Report
 
The Importance of Data Visualization
The Importance of Data VisualizationThe Importance of Data Visualization
The Importance of Data Visualization
 
From Data to Visualization, what happens in between?
From Data to Visualization, what happens in between?From Data to Visualization, what happens in between?
From Data to Visualization, what happens in between?
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
Shiny r, live shared and explored
Shiny   r, live shared and exploredShiny   r, live shared and explored
Shiny r, live shared and explored
 
Introducing R Shiny and R notebook: R collaborative tools
Introducing R Shiny and R notebook: R collaborative toolsIntroducing R Shiny and R notebook: R collaborative tools
Introducing R Shiny and R notebook: R collaborative tools
 
Shinyで確率分布を学ぶアプリ作った。あるいは、ShinyでD3.jsを使う方法
Shinyで確率分布を学ぶアプリ作った。あるいは、ShinyでD3.jsを使う方法Shinyで確率分布を学ぶアプリ作った。あるいは、ShinyでD3.jsを使う方法
Shinyで確率分布を学ぶアプリ作った。あるいは、ShinyでD3.jsを使う方法
 
Integrating R, knitr, and LaTeX via RStudio
Integrating R, knitr, and LaTeX via RStudioIntegrating R, knitr, and LaTeX via RStudio
Integrating R, knitr, and LaTeX via RStudio
 
R Markdown Tutorial For Beginners
R Markdown Tutorial For BeginnersR Markdown Tutorial For Beginners
R Markdown Tutorial For Beginners
 
Benefits of data visualization
Benefits of data visualizationBenefits of data visualization
Benefits of data visualization
 
Data Visualization Techniques
Data Visualization TechniquesData Visualization Techniques
Data Visualization Techniques
 
R visualization: ggplot2, googlevis, plotly, igraph Overview
R visualization: ggplot2, googlevis, plotly, igraph OverviewR visualization: ggplot2, googlevis, plotly, igraph Overview
R visualization: ggplot2, googlevis, plotly, igraph Overview
 
Big Data visualization with Apache Spark and Zeppelin
Big Data visualization with Apache Spark and ZeppelinBig Data visualization with Apache Spark and Zeppelin
Big Data visualization with Apache Spark and Zeppelin
 
Build Features, Not Apps
Build Features, Not AppsBuild Features, Not Apps
Build Features, Not Apps
 
Data visualization for development
Data visualization for developmentData visualization for development
Data visualization for development
 
Insights From Data Visualization - Stephen Lett (Procter & Gamble)
Insights From Data Visualization - Stephen Lett (Procter & Gamble)Insights From Data Visualization - Stephen Lett (Procter & Gamble)
Insights From Data Visualization - Stephen Lett (Procter & Gamble)
 
White paper data center critical infrastructure risk and vulnerabilities
White paper   data center critical infrastructure risk and vulnerabilitiesWhite paper   data center critical infrastructure risk and vulnerabilities
White paper data center critical infrastructure risk and vulnerabilities
 
UC Analytics Brochure
UC Analytics BrochureUC Analytics Brochure
UC Analytics Brochure
 

Similar a Data Visualization: Introduction to Shiny Web Applications

Visual Analytics for Linguistics - Day 5 ESSLLI 2017
Visual Analytics for Linguistics - Day 5 ESSLLI 2017Visual Analytics for Linguistics - Day 5 ESSLLI 2017
Visual Analytics for Linguistics - Day 5 ESSLLI 2017Olga Scrivner
 
Opensocial Haifa Seminar - 2008.04.08
Opensocial Haifa Seminar - 2008.04.08Opensocial Haifa Seminar - 2008.04.08
Opensocial Haifa Seminar - 2008.04.08Ari Leichtberg
 
Ajaxworld Opensocial Presentation
Ajaxworld Opensocial PresentationAjaxworld Opensocial Presentation
Ajaxworld Opensocial PresentationChris Schalk
 
A "lofiAPI": Using open source applications and simple XML to build a library...
A "lofiAPI": Using open source applications and simple XML to build a library...A "lofiAPI": Using open source applications and simple XML to build a library...
A "lofiAPI": Using open source applications and simple XML to build a library...jason clark
 
Lift web framework and Scala programming language talk
Lift web framework and Scala programming language talkLift web framework and Scala programming language talk
Lift web framework and Scala programming language talkclive boulton
 
Cross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkCross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkTroy Miles
 
Do Try This at Home! Extend IBM Connections using IBM Worklight
Do Try This at Home! Extend IBM Connections using IBM WorklightDo Try This at Home! Extend IBM Connections using IBM Worklight
Do Try This at Home! Extend IBM Connections using IBM WorklightProlifics
 
[Phpcamp]Shindig An OpenSocial container
[Phpcamp]Shindig An OpenSocial container[Phpcamp]Shindig An OpenSocial container
[Phpcamp]Shindig An OpenSocial containerBipin Upadhyay
 
API Product Opportunity Responsibility Nicolas Sierro 2015.pptx
API Product Opportunity Responsibility Nicolas Sierro 2015.pptxAPI Product Opportunity Responsibility Nicolas Sierro 2015.pptx
API Product Opportunity Responsibility Nicolas Sierro 2015.pptxBlockchainizator
 
Mobile, Open Source, and the Drive to the Cloud
Mobile, Open Source, and the Drive to the CloudMobile, Open Source, and the Drive to the Cloud
Mobile, Open Source, and the Drive to the CloudDev_Events
 
Mobile, Open Source, & the Drive to the Cloud
Mobile, Open Source, & the Drive to the CloudMobile, Open Source, & the Drive to the Cloud
Mobile, Open Source, & the Drive to the CloudDev_Events
 
App developer as a Web developer (ROROSyd - Jul 15)
App developer as a Web developer (ROROSyd - Jul 15)App developer as a Web developer (ROROSyd - Jul 15)
App developer as a Web developer (ROROSyd - Jul 15)Sameera Gayan
 
Centric - PWA WebCast
Centric - PWA WebCastCentric - PWA WebCast
Centric - PWA WebCastTimmy Kokke
 
Curriculum vitae - Adam Skołuda
Curriculum vitae - Adam SkołudaCurriculum vitae - Adam Skołuda
Curriculum vitae - Adam SkołudaAdam Skołuda
 
Creating an MVP with Oracle
Creating an MVP with OracleCreating an MVP with Oracle
Creating an MVP with OracleFranco Ucci
 
Let's Talk ProIV and Alexa
Let's Talk ProIV and AlexaLet's Talk ProIV and Alexa
Let's Talk ProIV and AlexaAndrew Turner
 
AWS Tech Summit - Berlin 2011 - Running Java Applications on AWS
AWS Tech Summit - Berlin 2011 - Running Java Applications on AWSAWS Tech Summit - Berlin 2011 - Running Java Applications on AWS
AWS Tech Summit - Berlin 2011 - Running Java Applications on AWSAmazon Web Services
 
BP204 - Take a REST and put your data to work with APIs!
BP204 - Take a REST and put your data to work with APIs!BP204 - Take a REST and put your data to work with APIs!
BP204 - Take a REST and put your data to work with APIs!Craig Schumann
 

Similar a Data Visualization: Introduction to Shiny Web Applications (20)

Visual Analytics for Linguistics - Day 5 ESSLLI 2017
Visual Analytics for Linguistics - Day 5 ESSLLI 2017Visual Analytics for Linguistics - Day 5 ESSLLI 2017
Visual Analytics for Linguistics - Day 5 ESSLLI 2017
 
Opensocial Haifa Seminar - 2008.04.08
Opensocial Haifa Seminar - 2008.04.08Opensocial Haifa Seminar - 2008.04.08
Opensocial Haifa Seminar - 2008.04.08
 
Ajaxworld Opensocial Presentation
Ajaxworld Opensocial PresentationAjaxworld Opensocial Presentation
Ajaxworld Opensocial Presentation
 
Rahul kaduskar
Rahul kaduskarRahul kaduskar
Rahul kaduskar
 
A "lofiAPI": Using open source applications and simple XML to build a library...
A "lofiAPI": Using open source applications and simple XML to build a library...A "lofiAPI": Using open source applications and simple XML to build a library...
A "lofiAPI": Using open source applications and simple XML to build a library...
 
Lift web framework and Scala programming language talk
Lift web framework and Scala programming language talkLift web framework and Scala programming language talk
Lift web framework and Scala programming language talk
 
Cross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkCross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic Framework
 
Do Try This at Home! Extend IBM Connections using IBM Worklight
Do Try This at Home! Extend IBM Connections using IBM WorklightDo Try This at Home! Extend IBM Connections using IBM Worklight
Do Try This at Home! Extend IBM Connections using IBM Worklight
 
[Phpcamp]Shindig An OpenSocial container
[Phpcamp]Shindig An OpenSocial container[Phpcamp]Shindig An OpenSocial container
[Phpcamp]Shindig An OpenSocial container
 
API Product Opportunity Responsibility Nicolas Sierro 2015.pptx
API Product Opportunity Responsibility Nicolas Sierro 2015.pptxAPI Product Opportunity Responsibility Nicolas Sierro 2015.pptx
API Product Opportunity Responsibility Nicolas Sierro 2015.pptx
 
Mobile, Open Source, and the Drive to the Cloud
Mobile, Open Source, and the Drive to the CloudMobile, Open Source, and the Drive to the Cloud
Mobile, Open Source, and the Drive to the Cloud
 
Mobile, Open Source, & the Drive to the Cloud
Mobile, Open Source, & the Drive to the CloudMobile, Open Source, & the Drive to the Cloud
Mobile, Open Source, & the Drive to the Cloud
 
App developer as a Web developer (ROROSyd - Jul 15)
App developer as a Web developer (ROROSyd - Jul 15)App developer as a Web developer (ROROSyd - Jul 15)
App developer as a Web developer (ROROSyd - Jul 15)
 
Centric - PWA WebCast
Centric - PWA WebCastCentric - PWA WebCast
Centric - PWA WebCast
 
Curriculum vitae - Adam Skołuda
Curriculum vitae - Adam SkołudaCurriculum vitae - Adam Skołuda
Curriculum vitae - Adam Skołuda
 
Creating an MVP with Oracle
Creating an MVP with OracleCreating an MVP with Oracle
Creating an MVP with Oracle
 
Let's Talk ProIV and Alexa
Let's Talk ProIV and AlexaLet's Talk ProIV and Alexa
Let's Talk ProIV and Alexa
 
Rahul_Resume
Rahul_ResumeRahul_Resume
Rahul_Resume
 
AWS Tech Summit - Berlin 2011 - Running Java Applications on AWS
AWS Tech Summit - Berlin 2011 - Running Java Applications on AWSAWS Tech Summit - Berlin 2011 - Running Java Applications on AWS
AWS Tech Summit - Berlin 2011 - Running Java Applications on AWS
 
BP204 - Take a REST and put your data to work with APIs!
BP204 - Take a REST and put your data to work with APIs!BP204 - Take a REST and put your data to work with APIs!
BP204 - Take a REST and put your data to work with APIs!
 

Más de Olga Scrivner

Engaging Students Competition and Polls.pptx
Engaging Students Competition and Polls.pptxEngaging Students Competition and Polls.pptx
Engaging Students Competition and Polls.pptxOlga Scrivner
 
HICSS ATLT: Advances in Teaching and Learning Technologies
HICSS ATLT: Advances in Teaching and Learning TechnologiesHICSS ATLT: Advances in Teaching and Learning Technologies
HICSS ATLT: Advances in Teaching and Learning TechnologiesOlga Scrivner
 
The power of unstructured data: Recommendation systems
The power of unstructured data: Recommendation systemsThe power of unstructured data: Recommendation systems
The power of unstructured data: Recommendation systemsOlga Scrivner
 
Cognitive executive functions and Opioid Use Disorder
Cognitive executive functions and Opioid Use DisorderCognitive executive functions and Opioid Use Disorder
Cognitive executive functions and Opioid Use DisorderOlga Scrivner
 
Introduction to Web Scraping with Python
Introduction to Web Scraping with PythonIntroduction to Web Scraping with Python
Introduction to Web Scraping with PythonOlga Scrivner
 
Call for paper Collaboration Systems and Technology
Call for paper Collaboration Systems and TechnologyCall for paper Collaboration Systems and Technology
Call for paper Collaboration Systems and TechnologyOlga Scrivner
 
Jupyter machine learning crash course
Jupyter machine learning crash courseJupyter machine learning crash course
Jupyter machine learning crash courseOlga Scrivner
 
R and RMarkdown crash course
R and RMarkdown crash courseR and RMarkdown crash course
R and RMarkdown crash courseOlga Scrivner
 
The Impact of Language Requirement on Students' Performance, Retention, and M...
The Impact of Language Requirement on Students' Performance, Retention, and M...The Impact of Language Requirement on Students' Performance, Retention, and M...
The Impact of Language Requirement on Students' Performance, Retention, and M...Olga Scrivner
 
If a picture is worth a thousand words, Interactive data visualizations are w...
If a picture is worth a thousand words, Interactive data visualizations are w...If a picture is worth a thousand words, Interactive data visualizations are w...
If a picture is worth a thousand words, Interactive data visualizations are w...Olga Scrivner
 
Introduction to Overleaf Workshop
Introduction to Overleaf WorkshopIntroduction to Overleaf Workshop
Introduction to Overleaf WorkshopOlga Scrivner
 
R crash course for Business Analytics Course K303
R crash course for Business Analytics Course K303R crash course for Business Analytics Course K303
R crash course for Business Analytics Course K303Olga Scrivner
 
Workshop nwav 47 - LVS - Tool for Quantitative Data Analysis
Workshop nwav 47 - LVS - Tool for Quantitative Data AnalysisWorkshop nwav 47 - LVS - Tool for Quantitative Data Analysis
Workshop nwav 47 - LVS - Tool for Quantitative Data AnalysisOlga Scrivner
 
Gender Disparity in Employment and Education
Gender Disparity in Employment and EducationGender Disparity in Employment and Education
Gender Disparity in Employment and EducationOlga Scrivner
 
CrashCourse: Python with DataCamp and Jupyter for Beginners
CrashCourse: Python with DataCamp and Jupyter for BeginnersCrashCourse: Python with DataCamp and Jupyter for Beginners
CrashCourse: Python with DataCamp and Jupyter for BeginnersOlga Scrivner
 
Optimizing Data Analysis: Web application with Shiny
Optimizing Data Analysis: Web application with ShinyOptimizing Data Analysis: Web application with Shiny
Optimizing Data Analysis: Web application with ShinyOlga Scrivner
 
Data Analysis and Visualization: R Workflow
Data Analysis and Visualization: R WorkflowData Analysis and Visualization: R Workflow
Data Analysis and Visualization: R WorkflowOlga Scrivner
 
Reproducible visual analytics of public opioid data
Reproducible visual analytics of public opioid dataReproducible visual analytics of public opioid data
Reproducible visual analytics of public opioid dataOlga Scrivner
 
Building Effective Visualization Shiny WVF
Building Effective Visualization Shiny WVFBuilding Effective Visualization Shiny WVF
Building Effective Visualization Shiny WVFOlga Scrivner
 
Introduction to R - from Rstudio to ggplot
Introduction to R - from Rstudio to ggplotIntroduction to R - from Rstudio to ggplot
Introduction to R - from Rstudio to ggplotOlga Scrivner
 

Más de Olga Scrivner (20)

Engaging Students Competition and Polls.pptx
Engaging Students Competition and Polls.pptxEngaging Students Competition and Polls.pptx
Engaging Students Competition and Polls.pptx
 
HICSS ATLT: Advances in Teaching and Learning Technologies
HICSS ATLT: Advances in Teaching and Learning TechnologiesHICSS ATLT: Advances in Teaching and Learning Technologies
HICSS ATLT: Advances in Teaching and Learning Technologies
 
The power of unstructured data: Recommendation systems
The power of unstructured data: Recommendation systemsThe power of unstructured data: Recommendation systems
The power of unstructured data: Recommendation systems
 
Cognitive executive functions and Opioid Use Disorder
Cognitive executive functions and Opioid Use DisorderCognitive executive functions and Opioid Use Disorder
Cognitive executive functions and Opioid Use Disorder
 
Introduction to Web Scraping with Python
Introduction to Web Scraping with PythonIntroduction to Web Scraping with Python
Introduction to Web Scraping with Python
 
Call for paper Collaboration Systems and Technology
Call for paper Collaboration Systems and TechnologyCall for paper Collaboration Systems and Technology
Call for paper Collaboration Systems and Technology
 
Jupyter machine learning crash course
Jupyter machine learning crash courseJupyter machine learning crash course
Jupyter machine learning crash course
 
R and RMarkdown crash course
R and RMarkdown crash courseR and RMarkdown crash course
R and RMarkdown crash course
 
The Impact of Language Requirement on Students' Performance, Retention, and M...
The Impact of Language Requirement on Students' Performance, Retention, and M...The Impact of Language Requirement on Students' Performance, Retention, and M...
The Impact of Language Requirement on Students' Performance, Retention, and M...
 
If a picture is worth a thousand words, Interactive data visualizations are w...
If a picture is worth a thousand words, Interactive data visualizations are w...If a picture is worth a thousand words, Interactive data visualizations are w...
If a picture is worth a thousand words, Interactive data visualizations are w...
 
Introduction to Overleaf Workshop
Introduction to Overleaf WorkshopIntroduction to Overleaf Workshop
Introduction to Overleaf Workshop
 
R crash course for Business Analytics Course K303
R crash course for Business Analytics Course K303R crash course for Business Analytics Course K303
R crash course for Business Analytics Course K303
 
Workshop nwav 47 - LVS - Tool for Quantitative Data Analysis
Workshop nwav 47 - LVS - Tool for Quantitative Data AnalysisWorkshop nwav 47 - LVS - Tool for Quantitative Data Analysis
Workshop nwav 47 - LVS - Tool for Quantitative Data Analysis
 
Gender Disparity in Employment and Education
Gender Disparity in Employment and EducationGender Disparity in Employment and Education
Gender Disparity in Employment and Education
 
CrashCourse: Python with DataCamp and Jupyter for Beginners
CrashCourse: Python with DataCamp and Jupyter for BeginnersCrashCourse: Python with DataCamp and Jupyter for Beginners
CrashCourse: Python with DataCamp and Jupyter for Beginners
 
Optimizing Data Analysis: Web application with Shiny
Optimizing Data Analysis: Web application with ShinyOptimizing Data Analysis: Web application with Shiny
Optimizing Data Analysis: Web application with Shiny
 
Data Analysis and Visualization: R Workflow
Data Analysis and Visualization: R WorkflowData Analysis and Visualization: R Workflow
Data Analysis and Visualization: R Workflow
 
Reproducible visual analytics of public opioid data
Reproducible visual analytics of public opioid dataReproducible visual analytics of public opioid data
Reproducible visual analytics of public opioid data
 
Building Effective Visualization Shiny WVF
Building Effective Visualization Shiny WVFBuilding Effective Visualization Shiny WVF
Building Effective Visualization Shiny WVF
 
Introduction to R - from Rstudio to ggplot
Introduction to R - from Rstudio to ggplotIntroduction to R - from Rstudio to ggplot
Introduction to R - from Rstudio to ggplot
 

Último

Data Factory in Microsoft Fabric (MsBIP #82)
Data Factory in Microsoft Fabric (MsBIP #82)Data Factory in Microsoft Fabric (MsBIP #82)
Data Factory in Microsoft Fabric (MsBIP #82)Cathrine Wilhelmsen
 
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSINGmarianagonzalez07
 
科罗拉多大学波尔得分校毕业证学位证成绩单-可办理
科罗拉多大学波尔得分校毕业证学位证成绩单-可办理科罗拉多大学波尔得分校毕业证学位证成绩单-可办理
科罗拉多大学波尔得分校毕业证学位证成绩单-可办理e4aez8ss
 
INTERNSHIP ON PURBASHA COMPOSITE TEX LTD
INTERNSHIP ON PURBASHA COMPOSITE TEX LTDINTERNSHIP ON PURBASHA COMPOSITE TEX LTD
INTERNSHIP ON PURBASHA COMPOSITE TEX LTDRafezzaman
 
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...Florian Roscheck
 
DBA Basics: Getting Started with Performance Tuning.pdf
DBA Basics: Getting Started with Performance Tuning.pdfDBA Basics: Getting Started with Performance Tuning.pdf
DBA Basics: Getting Started with Performance Tuning.pdfJohn Sterrett
 
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...Amil Baba Dawood bangali
 
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...Jack DiGiovanna
 
RadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfRadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfgstagge
 
GA4 Without Cookies [Measure Camp AMS]
GA4 Without Cookies [Measure Camp AMS]GA4 Without Cookies [Measure Camp AMS]
GA4 Without Cookies [Measure Camp AMS]📊 Markus Baersch
 
RABBIT: A CLI tool for identifying bots based on their GitHub events.
RABBIT: A CLI tool for identifying bots based on their GitHub events.RABBIT: A CLI tool for identifying bots based on their GitHub events.
RABBIT: A CLI tool for identifying bots based on their GitHub events.natarajan8993
 
Call Girls In Dwarka 9654467111 Escorts Service
Call Girls In Dwarka 9654467111 Escorts ServiceCall Girls In Dwarka 9654467111 Escorts Service
Call Girls In Dwarka 9654467111 Escorts ServiceSapana Sha
 
Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Seán Kennedy
 
Biometric Authentication: The Evolution, Applications, Benefits and Challenge...
Biometric Authentication: The Evolution, Applications, Benefits and Challenge...Biometric Authentication: The Evolution, Applications, Benefits and Challenge...
Biometric Authentication: The Evolution, Applications, Benefits and Challenge...GQ Research
 
Generative AI for Social Good at Open Data Science East 2024
Generative AI for Social Good at Open Data Science East 2024Generative AI for Social Good at Open Data Science East 2024
Generative AI for Social Good at Open Data Science East 2024Colleen Farrelly
 
Defining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data StoryDefining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data StoryJeremy Anderson
 
Machine learning classification ppt.ppt
Machine learning classification  ppt.pptMachine learning classification  ppt.ppt
Machine learning classification ppt.pptamreenkhanum0307
 
Multiple time frame trading analysis -brianshannon.pdf
Multiple time frame trading analysis -brianshannon.pdfMultiple time frame trading analysis -brianshannon.pdf
Multiple time frame trading analysis -brianshannon.pdfchwongval
 
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degreeyuu sss
 

Último (20)

Data Factory in Microsoft Fabric (MsBIP #82)
Data Factory in Microsoft Fabric (MsBIP #82)Data Factory in Microsoft Fabric (MsBIP #82)
Data Factory in Microsoft Fabric (MsBIP #82)
 
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
 
科罗拉多大学波尔得分校毕业证学位证成绩单-可办理
科罗拉多大学波尔得分校毕业证学位证成绩单-可办理科罗拉多大学波尔得分校毕业证学位证成绩单-可办理
科罗拉多大学波尔得分校毕业证学位证成绩单-可办理
 
INTERNSHIP ON PURBASHA COMPOSITE TEX LTD
INTERNSHIP ON PURBASHA COMPOSITE TEX LTDINTERNSHIP ON PURBASHA COMPOSITE TEX LTD
INTERNSHIP ON PURBASHA COMPOSITE TEX LTD
 
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...From idea to production in a day – Leveraging Azure ML and Streamlit to build...
From idea to production in a day – Leveraging Azure ML and Streamlit to build...
 
Call Girls in Saket 99530🔝 56974 Escort Service
Call Girls in Saket 99530🔝 56974 Escort ServiceCall Girls in Saket 99530🔝 56974 Escort Service
Call Girls in Saket 99530🔝 56974 Escort Service
 
DBA Basics: Getting Started with Performance Tuning.pdf
DBA Basics: Getting Started with Performance Tuning.pdfDBA Basics: Getting Started with Performance Tuning.pdf
DBA Basics: Getting Started with Performance Tuning.pdf
 
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
NO1 Certified Black Magic Specialist Expert Amil baba in Lahore Islamabad Raw...
 
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
 
RadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfRadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdf
 
GA4 Without Cookies [Measure Camp AMS]
GA4 Without Cookies [Measure Camp AMS]GA4 Without Cookies [Measure Camp AMS]
GA4 Without Cookies [Measure Camp AMS]
 
RABBIT: A CLI tool for identifying bots based on their GitHub events.
RABBIT: A CLI tool for identifying bots based on their GitHub events.RABBIT: A CLI tool for identifying bots based on their GitHub events.
RABBIT: A CLI tool for identifying bots based on their GitHub events.
 
Call Girls In Dwarka 9654467111 Escorts Service
Call Girls In Dwarka 9654467111 Escorts ServiceCall Girls In Dwarka 9654467111 Escorts Service
Call Girls In Dwarka 9654467111 Escorts Service
 
Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...
 
Biometric Authentication: The Evolution, Applications, Benefits and Challenge...
Biometric Authentication: The Evolution, Applications, Benefits and Challenge...Biometric Authentication: The Evolution, Applications, Benefits and Challenge...
Biometric Authentication: The Evolution, Applications, Benefits and Challenge...
 
Generative AI for Social Good at Open Data Science East 2024
Generative AI for Social Good at Open Data Science East 2024Generative AI for Social Good at Open Data Science East 2024
Generative AI for Social Good at Open Data Science East 2024
 
Defining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data StoryDefining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data Story
 
Machine learning classification ppt.ppt
Machine learning classification  ppt.pptMachine learning classification  ppt.ppt
Machine learning classification ppt.ppt
 
Multiple time frame trading analysis -brianshannon.pdf
Multiple time frame trading analysis -brianshannon.pdfMultiple time frame trading analysis -brianshannon.pdf
Multiple time frame trading analysis -brianshannon.pdf
 
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
 

Data Visualization: Introduction to Shiny Web Applications

  • 1. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Data Visualization: Shiny Application Olga Scrivner
  • 2. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Outline 1. Introduction to web applications 2. Reactive Shiny and R framework 3. Shiny application demo - ITMS 4. Practice
  • 3. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Imperative Web Frameworks Traditional Model-View-Control
  • 4. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Imperative Web Frameworks Traditional Model-View-Control “The controller is essential and explicit: you have to specify what to do when you receive user requests and what resources you are going to mobilize to carry out the necessary tasks outlined in the model” (Ribeiro 2016)
  • 5. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Reactive Web Framework “Reactive Systems are highly responsive, giving users effective interactive feedback” http://www.reactivemanifesto.org/ http://littleactuary.github.io/blog/Web-application-framework-with-Shiny/
  • 6. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Reactive Architecture
  • 7. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Reactive Framework and Data Science “The impact of data scientists’ work depends on how well others can understand their insights to take further actions” Benefit 1: Interactive display and manipulation of data Benefit 2: No installation required Benefit 3: Easy to develop and share with clients and project teams Benefit 4: Open source library http://datascience.ibm.com/blog/shiny-a-data-scientist-best-friend/
  • 8. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Shiny Application 1. Shiny is an R package for building interactive web applications 2. Open-Sourced by RStudio 11/2012 on CRAN 3. Uses web sockets (new HTTP): Interactive communication sessions between the user’s browser and a server without having to poll the server for a reply 4. Entirely extensible - custom input/output
  • 9. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo R: Historical Background R - an implementation of S programming language In 1970s John Chambers, Rick Becker, and Allan Wilks develop S and S+ at Bell Labs Bell System monopoly was broken up in 1982 Late 80s some attempt to commercialize S/S+ but already too many non-commercial implementations Ross Ihaka and Robert Gentleman produce R in early 1990s
  • 10. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Shiny Library http://littleactuary.github.io/blog/Web-application-framework-with-Shiny/
  • 11. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Shiny Gallery - Get Inspired https://www.rstudio.com/products/shiny/shiny-user-showcase/
  • 12. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Interactive Text Mining Suite (Scrivner et al. 2016) 1. Web application for text processing and mining 2. Interactive natural language processing techniques Wordstops, stemming, text-preprocessing 3. High customization
  • 13. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Accessibility PC, Mac, Linux, Smart Phones Chrome, Firefox, Safari ITMS Web site: http://www.interactivetextminingsuite.com
  • 14. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo ITMS Structure 1. File Uploads Upload files (txt, pdf, rdf, Google books API) 2. Data Preparation Data preprocessing (stopwords, stemming, metadata) 3. Data Visualization Word frequencies, cluster analysis, topic modeling
  • 15. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Stopwords Stopwords (e.g. the, and):
  • 16. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Manual Removal of Stopwords
  • 17. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Stemming
  • 18. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Word Cloud Representation
  • 19. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Customization
  • 20. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Topic Modeling Discovering underlying theme of collection from Science magazine 1990-2000 (Blei 2012) LDA (Latent Dirichlet allocation) STM (Structural Topic model) Chronological topic visualization (lda): requires metadata
  • 21. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Topic Modeling Tuning Selection of topics (how many different themes) Selection of words per theme (how many words per topic) Selection of iteration
  • 22. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Using Google Books API Select your search terms and submit Current limitation is 40 books
  • 23. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Workshop Materials 1. Rstudio 2. R 3. Shiny library 4. Some ideas are from http://deanattali.com/blog/ building-shiny-apps-tutorial/
  • 24. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo R software R is a free software for data analysis, text mining and visualization. To install R on Window: 1. Download the binary file for R https://cran.r-project.org/bin/windows/base/ R-3.3.1-win.exe 2. Open the downloaded .exe file and Install R To install R on Mac: 1. Download the appropriate version of .pkg file https://cran.r-project.org/bin/macosx/ 2. Open the downloaded .pkg file and Install R
  • 25. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo R Studio RStudio is a free user interface for R. 1. Install the appropriate RStudio version https: //www.rstudio.com/products/rstudio/download/ 2. Run it to install R-studio
  • 26. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo R Studio Structure
  • 27. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Installing Packages In your bottom left window - go to Packages
  • 28. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Selecting Packages - shiny
  • 29. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Creating Scripts Create R File: File → New File → R Script
  • 30. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Execution - RUN To execute your commands you need to click run Type in the script and run: library(shiny)
  • 31. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Shiny Demo runExample("01 hello")
  • 32. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Shiny Demo
  • 33. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Shiny Demo
  • 34. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo UI.R
  • 35. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Reactive Input/Output Input - things user can toggle Output - R objects that user can see, often depend on inputs
  • 36. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Closing App
  • 37. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Step 1 - Create New Web Shiny App
  • 38. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Step 2 - Run App
  • 39. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo UI shinyUI(fluidPage( # Application title titlePanel("Old Faithful Geyser Data"), # Sidebar with a slider input for number of bins sidebarLayout( sidebarPanel( sliderInput("bins", "Number of bins:", min = 1, max = 50, value = 30) ), # Show a plot of the generated distribution mainPanel( plotOutput("distPlot") ) )
  • 40. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Modifying UI - Practice 1. Change Title 2. Change Bins values: min, max and value 3. Save 4. RunApp
  • 41. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo HTML The UI script simply creates HTML
  • 42. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo HTML HTML tags: http: //shiny.rstudio.com/articles/tag-glossary.html h1() = header1 br() = line break p() = paragraph hr() = line
  • 43. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Adding HTML Tag to UI.R - Practice shinyUI(fluidPage( # Application title titlePanel("My Title"), h3("My subtitle"), p("This is my first app!"), br(), hr(),
  • 44. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Adding HTML Tag to UI.R - Practice shinyUI(fluidPage( # Application title titlePanel("My Title"), h3("My subtitle"), p("This is my first app!"), br(), hr(), RunApp
  • 45. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Layout http: //shiny.rstudio.com/articles/layout-guide.html
  • 46. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo mainPanel mainPanel( plotOutput(”distPlot”)) Let’s add 3 tab panels: Plot, Summary, Tabel
  • 47. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo tabsetPanel mainPanel( tabsetPanel( tabPanel("Plot", plotOutput("distPlot")), tabPanel("Summary"), tabPanel("Table") ) )
  • 48. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo tabsetPanel mainPanel( tabsetPanel( tabPanel("Plot", plotOutput("distPlot")), tabPanel("Summary"), tabPanel("Table") ) )
  • 49. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Input Data
  • 50. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Input Data 1. Blog https: //languagevariationsuite.wordpress.com/ 2. Download csv file - movie metadata.csv 3. Place this file into the directory myshiny
  • 51. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo New Input in UI.R We will add fileInput function inside sidebarPanel: NB: commas are important! sidebarPanel( sliderInput(.......), fileInput() )
  • 52. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo New Input in UI.R fileInput(’file1’, ’Choose CSV File’, multiple=FALSE, accept=c(’text/csv’, ’text/comma-separated-values,text/plain’, ’.csv’) )
  • 53. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Reactive Function in Sever.R myfile <- reactive({ if (is.null(input$file1)){return()} mydata <- read.csv(input$file1$datapath, header=TRUE, sep=’,’) return(mydata) }) To use reactive data we will pass myfile() content to output functions
  • 54. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo New Output Function summary in Server.R output$summary <- renderPrint({ summary(myfile()) })
  • 55. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo New Output Function table in Server.R output$table <- renderDataTable({ myfile() })
  • 56. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Linking summary and table with UI.R tabsetPanel( tabPanel("Plot", plotOutput("distPlot")), tabPanel("Summary", verbatimTextOutput("summary")), tabPanel("Table", dataTableOutput("table")) )
  • 57. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Linking summary and table with UI.R tabsetPanel( tabPanel("Plot", plotOutput("distPlot")), tabPanel("Summary", verbatimTextOutput("summary")), tabPanel("Table", dataTableOutput("table")) ) RunApp
  • 58. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Testing CSV Upload
  • 59. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo One more IF-Statement - Server.R We want to do a histogram for csv file: if (condition) {do..} else {do...}
  • 60. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo One more IF-Statement - Server.R We want to do a histogram for csv file: if (condition) {do..} else {do...} output$distPlot <- renderPlot({ if (is.null(input$file1)) { .... hist(x, breaks = bins, col = ’darkgray’, border = ’white’) }
  • 61. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo One more IF-Statement - Server.R We want to do a histogram for csv file: if (condition) {do..} else {do...} output$distPlot <- renderPlot({ if (is.null(input$file1)) { .... hist(x, breaks = bins, col = ’darkgray’, border = ’white’) } else{ x <- myfile()$budget bins <- seq(min(x), max(x), length.out = input$bins + 1) hist(x, breaks = bins, col=’red’, main = ’My New Histogram’) } })
  • 62. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo RunApp
  • 63. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Deployment Options 1. Share server.r and ui.r 2. Host on shinyapps.io 3. Host on Shiny server
  • 64. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Deploy with shinyapps.io www.shinyapps.io sign up for an account. Publish Application button in RStudio and follow instructions
  • 65. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Deploy with shinyapps.io
  • 66. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo My shinyapps.io
  • 67. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo My shinyapps.io
  • 68. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Useful resources 1. Shiny official tutorial - http://shiny.rstudio.com/tutorial 2. Cheat sheet - http://shiny.rstudio.com/images/ shiny-cheatsheet.pdf 3. Publish your app free - http://www.shinyapps.io 4. Examples -http://www.showmeshiny.com/ 5. Tutorial by Dean Attali - http://deanattali.com/ blog/building-shiny-apps-tutorial/
  • 69. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Thank you! My email: obscrivn@indiana.edu
  • 70. Data Visualization: Shiny Application Olga Scrivner Web Framework Shiny App Practice Demo Credits https://github.com/IBMDataScience/dsx-shiny-apps http://www.slideshare.net/SarahAerni/ data-science-as-a-commodity-use-madlib-r-other-oss-tools-for-data- http://www.unixstickers.com/image/data/stickers/ react/badge/React-JS.sh.png https://github.com/rstudio/shiny/issues/250 http://www.slideshare.net/ilio-catallo/ spring-mvc-the-basics