SlideShare ist ein Scribd-Unternehmen logo
1 von 74
Downloaden Sie, um offline zu lesen
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Data Visualization for Corpus Linguistics:
Shiny Framework
Olga Scrivner
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
What You Will Learn
1. Introduction to Visual Analytics
2. Reactive Web Framework
3. Shiny Application
4. Practice
https://languagevariationsuite.wordpress.com/
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Data Analytics
“Analytics is the critical technology
needed to bring value out of data”
(Anonymous)
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Visual Analytics
“The science of analytical reasoning
facilitated by visual interactive interfaces”
(Thomas and Cook, 2005)
“Visual analytics integrates new computational and
theory-based tools with innovative interactive techniques
and visual representations to enable human-information
discourse” (Thomas and Cook, 2005)
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Visual Analytics and Linguistics
“ Language is a system of relatively arbitrary symbols”
(Baker-Shenk and Cokely, 1980)
http://www.tableaufit.com/tableau-conference-linguistics-data-visualization/
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Visual Analytics (and Corpus Linguistics)
1. Exploration (Queries)
2. Comprehension (Analysis)
3. Communication (Presentation)
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Corpus Linguistics Visualization
http://scimaps.org/home.html
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Visualization Tools
Challenges:
Many tools are built for non-linguistic research
Limited preprocessing
Visualization may not fit linguistic data
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Visualization Tools
Challenges:
Many tools are built for non-linguistic research
Limited preprocessing
Visualization may not fit linguistic data
Solution: Reactive Framework
Interactive and web-based
Research-driven customization
Build your own tool!
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
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
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Reactive Architecture
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
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
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
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
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Shiny Library
http://littleactuary.github.io/blog/Web-application-framework-with-Shiny/
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Shiny Gallery - Get Inspired
https://www.rstudio.com/products/shiny/shiny-user-showcase/
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
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
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Stopwords
Stopwords (e.g. the, and):
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Manual Removal of Stopwords
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Stemming
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Word Cloud Representation
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Customization
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Format Flexibility
Example: Using Google Books API
Current limitation is 40 books
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Workshop Materials
1. Rstudio
2. R
3. Shiny library
4. Materials:
https:
//languagevariationsuite.wordpress.com/
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
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
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
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
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
R Studio Structure
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Installing Packages
In your bottom left window - go to Packages
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Selecting Packages - shiny
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Creating Scripts
Create R File: File → New File → R Script
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Execution - RUN
To execute - click run
In the script (top left window) type:
library(shiny)
Click Run (your cursor can be at the beginning or at the end
of the line)
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Shiny Demo
runExample(“01 hello”)
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Shiny Demo
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Shiny Demo
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
UI.R
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Reactive Input/Output
Input - things user can toggle
Output - R objects that user can see, often depend on
inputs
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Closing App
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Step 1 - Create New Web Shiny App
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Step 2 - Run App
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
UI
shinyUI( fluidPage(
titlePanel(“Old Faithful Geyser Data”),
sidebarLayout(
sidebarPanel(
sliderInput(“bins”,
“Number of bins:”,
min = 1,
max = 50,
value = 30)
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
UI
shinyUI( fluidPage(
titlePanel(“Old Faithful Geyser Data”),
sidebarLayout(
sidebarPanel(
sliderInput(“bins”,
“Number of bins:”,
min = 1,
max = 50,
value = 30)
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Modifying UI - Practice
Change slider’s label:
Number of bins → Choose a number
Change slider’s values: max and value
Save
RunApp
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
HTML
The UI script simply creates HTML
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
HTML
HTML tags:
http:
//shiny.rstudio.com/articles/tag-glossary.html
h1() = header1
br() = line break
p() = paragraph
hr() = line
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Adding HTML Tags to UI.R - Practice
shinyUI( fluidPage(
titlePanel(“My Title”),
h3(“My subtitle”),
p(“This is my first app!”),
br(),
hr(),
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Layout
http:
//shiny.rstudio.com/articles/layout-guide.html
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
mainPanel
mainPanel( plotOutput(”distPlot”))
Let’s add 3 tab panels: Plot, Summary, Table
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
tabsetPanel
mainPanel(
tabsetPanel(
tabPanel(“Plot”, plotOutput(“distPlot”)),
tabPanel(“Summary”),
tabPanel(“Table”)
)
)
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Input Data
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
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
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
New Input in UI.R
Let’s look at the fileInput() function from Shiny
Reference page
Type in your browser: fileInput Shiny
or go to the Shiny Reference page -
https://shiny.rstudio.com/reference/shiny/
latest/fileInput.html
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
New Input in UI.R
Scroll down to Examples
We will add fileInput function inside sidebarPanel
Copy fileInput function
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
New Input in UI.R
Paste it after slider
NB: commas are important!
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Reactive Function in Sever.R
Reactive - it changes every time the user uploads new data
Create a function that reads csv file
myfile() is a function that will read and return csv files
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Render - Reactive Data
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Function summary in Server.R
output$summary <- renderPrint({
summary(myfile())
})
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
New Output Function table in Server.R
output$table <- renderDataTable({
myfile()
})
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Linking summary and table with UI.R
tabsetPanel(
tabPanel("Plot", plotOutput("distPlot")),
tabPanel("Summary", verbatimTextOutput("summary")),
tabPanel("Table", dataTableOutput("table"))
)
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Linking summary and table with UI.R
tabsetPanel(
tabPanel("Plot", plotOutput("distPlot")),
tabPanel("Summary", verbatimTextOutput("summary")),
tabPanel("Table", dataTableOutput("table"))
)
RunApp
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Testing CSV Upload
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
One more IF-Statement - Server.R
We want to do a histogram for csv file:
if (condition) {do..} else {do...}
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
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
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
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
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
RunApp
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Server - Recap
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Deployment Options
1. Share server.r and ui.r
2. Host on shinyapps.io
3. Host on Shiny server
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Deploy with shinyapps.io
www.shinyapps.io
sign up for an account.
Publish Application button in RStudio and follow
instructions
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Deploy with shinyapps.io
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
My shinyapps.io
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
My shinyapps.io
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Future of Visualization Tools: CNS
Cyberinfrastructure for Network Science Center at Indiana
University - http://cns.iu.edu/
Our current project on Shiny Framework (team Olga
Scrivner and Jivitesh Poojary)
Build Shiny templates for Data Visualization: stage I
https:
//github.com/Jivitesh-Poojary/CNS-Shiny-Apps
Create user-friendly customizable Shiny dashboards:
stage II
Develop preprocessing plugins for Shiny templates:
stage III
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
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
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Thank you!
My email: obscrivn@indiana.edu
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
References
B¨orner, Katy. 2015. Atlas of Knowledge: Anyone Can Map. The
MIT Press
Collins, Christopher. 2012. Bridging the Linguistic Visualization
Divide. LingVis/UNCLH Workshop
Grolemund, Garrett. 2017. How to start with Shiny, Part 1.
Workshop
Data Visualization
for Corpus
Linguistics:
Shiny Framework
Olga Scrivner
Visual Analytics
Reactive
Framework
Shiny App
Practice
Credits
http:
//deanattali.com/blog/building-shiny-apps-tutorial/
http://scimaps.org/mapdetail/stream_of_scientific_128
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

Weitere ähnliche Inhalte

Was ist angesagt?

Steps to write Selenium
Steps to write Selenium  Steps to write Selenium
Steps to write Selenium
Rohit Thakur
 

Was ist angesagt? (14)

Automated testing using Selenium & NUnit
Automated testing using Selenium & NUnitAutomated testing using Selenium & NUnit
Automated testing using Selenium & NUnit
 
Selenium WebDriver with C#
Selenium WebDriver with C#Selenium WebDriver with C#
Selenium WebDriver with C#
 
Steps to write Selenium
Steps to write Selenium  Steps to write Selenium
Steps to write Selenium
 
Maintainable UI Tests with Selenium and C#
Maintainable UI Tests with Selenium and C#Maintainable UI Tests with Selenium and C#
Maintainable UI Tests with Selenium and C#
 
RBC Mod 1: Making a New Rails App
RBC Mod 1: Making a New Rails AppRBC Mod 1: Making a New Rails App
RBC Mod 1: Making a New Rails App
 
Publishing API documentation -- Presentation
Publishing API documentation -- PresentationPublishing API documentation -- Presentation
Publishing API documentation -- Presentation
 
O365Con18 - Working with PowerShell, VS Code and GitHub - Thomas Vochten
O365Con18 - Working with PowerShell, VS Code and GitHub - Thomas VochtenO365Con18 - Working with PowerShell, VS Code and GitHub - Thomas Vochten
O365Con18 - Working with PowerShell, VS Code and GitHub - Thomas Vochten
 
Selenium
SeleniumSelenium
Selenium
 
SharePoint Development with the SharePoint Framework
SharePoint Development with the SharePoint FrameworkSharePoint Development with the SharePoint Framework
SharePoint Development with the SharePoint Framework
 
Publishing API documentation -- Workshop
Publishing API documentation -- WorkshopPublishing API documentation -- Workshop
Publishing API documentation -- Workshop
 
ASP.NET Core Unit Testing
ASP.NET Core Unit TestingASP.NET Core Unit Testing
ASP.NET Core Unit Testing
 
How Gear4Music Went from 0-1000+ API Tests
How Gear4Music Went from 0-1000+ API TestsHow Gear4Music Went from 0-1000+ API Tests
How Gear4Music Went from 0-1000+ API Tests
 
Console Apps: php artisan forthe:win
Console Apps: php artisan forthe:win Console Apps: php artisan forthe:win
Console Apps: php artisan forthe:win
 
DotNet Cologne 2015 - Windows 10 AppDev, Teil2: Coole APIs - (Daniel Meixner)
DotNet Cologne 2015 - Windows 10 AppDev, Teil2: Coole APIs - (Daniel Meixner)DotNet Cologne 2015 - Windows 10 AppDev, Teil2: Coole APIs - (Daniel Meixner)
DotNet Cologne 2015 - Windows 10 AppDev, Teil2: Coole APIs - (Daniel Meixner)
 

Ähnlich wie Workshop: Data Visualization for Corpus Linguistics via Shiny Framework

PREETI NANCY KUJUR_cvn
PREETI NANCY KUJUR_cvnPREETI NANCY KUJUR_cvn
PREETI NANCY KUJUR_cvn
Preeti Nancy
 

Ähnlich wie Workshop: Data Visualization for Corpus Linguistics via Shiny Framework (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
 
Resume
ResumeResume
Resume
 
Resume_ALOK
Resume_ALOKResume_ALOK
Resume_ALOK
 
OpenSocial CyWorld Dev.Square presentation Sep 09
OpenSocial CyWorld Dev.Square presentation Sep 09OpenSocial CyWorld Dev.Square presentation Sep 09
OpenSocial CyWorld Dev.Square presentation Sep 09
 
Radhakrishnan Moni
Radhakrishnan MoniRadhakrishnan Moni
Radhakrishnan Moni
 
Building State-of-the-art Natural Language Processing Projects with Free Soft...
Building State-of-the-art Natural Language Processing Projects with Free Soft...Building State-of-the-art Natural Language Processing Projects with Free Soft...
Building State-of-the-art Natural Language Processing Projects with Free Soft...
 
Building Customized Text Mining Tools via Shiny Framework: The Future of Data...
Building Customized Text Mining Tools via Shiny Framework: The Future of Data...Building Customized Text Mining Tools via Shiny Framework: The Future of Data...
Building Customized Text Mining Tools via Shiny Framework: The Future of Data...
 
Resume
ResumeResume
Resume
 
Goncalo Pereira CV
Goncalo Pereira CVGoncalo Pereira CV
Goncalo Pereira CV
 
AWS re:Invent 2016: Open Source at AWS—Contributions, Support, and Engagement...
AWS re:Invent 2016: Open Source at AWS—Contributions, Support, and Engagement...AWS re:Invent 2016: Open Source at AWS—Contributions, Support, and Engagement...
AWS re:Invent 2016: Open Source at AWS—Contributions, Support, and Engagement...
 
OPENi perspective on APIs and Cloudlets @Athens hackathon, September 2014
OPENi perspective on APIs and Cloudlets @Athens hackathon, September 2014OPENi perspective on APIs and Cloudlets @Athens hackathon, September 2014
OPENi perspective on APIs and Cloudlets @Athens hackathon, September 2014
 
Making shiny shine brighter
Making shiny shine brighterMaking shiny shine brighter
Making shiny shine brighter
 
OPENi perspective on APIs and Cloudlets @Athens hackathon, September 2014
OPENi perspective on APIs and Cloudlets @Athens hackathon, September 2014OPENi perspective on APIs and Cloudlets @Athens hackathon, September 2014
OPENi perspective on APIs and Cloudlets @Athens hackathon, September 2014
 
An Infographic on My 25 Articles in Open Source For You Magazine
An Infographic on My 25 Articles in Open Source For You Magazine An Infographic on My 25 Articles in Open Source For You Magazine
An Infographic on My 25 Articles in Open Source For You Magazine
 
Redfine
RedfineRedfine
Redfine
 
Creating an MVP with Oracle
Creating an MVP with OracleCreating an MVP with Oracle
Creating an MVP with Oracle
 
PREETI NANCY KUJUR_cvn
PREETI NANCY KUJUR_cvnPREETI NANCY KUJUR_cvn
PREETI NANCY KUJUR_cvn
 
Mining public datasets using opensource tools: Zeppelin, Spark and Juju
Mining public datasets using opensource tools: Zeppelin, Spark and JujuMining public datasets using opensource tools: Zeppelin, Spark and Juju
Mining public datasets using opensource tools: Zeppelin, Spark and Juju
 
CV
CVCV
CV
 
Walter api
Walter apiWalter api
Walter api
 

Mehr von Olga Scrivner

Mehr von 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
 

Kürzlich hochgeladen

Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
amitlee9823
 
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
amitlee9823
 
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
amitlee9823
 
➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men 🔝Mathura🔝 Escorts...
➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men  🔝Mathura🔝   Escorts...➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men  🔝Mathura🔝   Escorts...
➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men 🔝Mathura🔝 Escorts...
amitlee9823
 
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
only4webmaster01
 
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
amitlee9823
 
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
amitlee9823
 
Abortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get CytotecAbortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Riyadh +966572737505 get cytotec
 
Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...
Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...
Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...
gajnagarg
 
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
amitlee9823
 
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
amitlee9823
 
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men 🔝Ongole🔝 Escorts S...
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men  🔝Ongole🔝   Escorts S...➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men  🔝Ongole🔝   Escorts S...
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men 🔝Ongole🔝 Escorts S...
amitlee9823
 
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night StandCall Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 

Kürzlich hochgeladen (20)

Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
 
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
 
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
 
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
 
➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men 🔝Mathura🔝 Escorts...
➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men  🔝Mathura🔝   Escorts...➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men  🔝Mathura🔝   Escorts...
➥🔝 7737669865 🔝▻ Mathura Call-girls in Women Seeking Men 🔝Mathura🔝 Escorts...
 
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24  Building Real-Time Pipelines With FLaNKDATA SUMMIT 24  Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
 
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
 
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
 
Detecting Credit Card Fraud: A Machine Learning Approach
Detecting Credit Card Fraud: A Machine Learning ApproachDetecting Credit Card Fraud: A Machine Learning Approach
Detecting Credit Card Fraud: A Machine Learning Approach
 
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
 
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
 
Abortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get CytotecAbortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get Cytotec
 
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
 
Anomaly detection and data imputation within time series
Anomaly detection and data imputation within time seriesAnomaly detection and data imputation within time series
Anomaly detection and data imputation within time series
 
Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...
Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...
Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...
 
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men  🔝Dindigul🔝   Escor...
➥🔝 7737669865 🔝▻ Dindigul Call-girls in Women Seeking Men 🔝Dindigul🔝 Escor...
 
Predicting Loan Approval: A Data Science Project
Predicting Loan Approval: A Data Science ProjectPredicting Loan Approval: A Data Science Project
Predicting Loan Approval: A Data Science Project
 
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
 
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men 🔝Ongole🔝 Escorts S...
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men  🔝Ongole🔝   Escorts S...➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men  🔝Ongole🔝   Escorts S...
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men 🔝Ongole🔝 Escorts S...
 
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night StandCall Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
 

Workshop: Data Visualization for Corpus Linguistics via Shiny Framework

  • 1. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner
  • 2. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice What You Will Learn 1. Introduction to Visual Analytics 2. Reactive Web Framework 3. Shiny Application 4. Practice https://languagevariationsuite.wordpress.com/
  • 3. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Data Analytics “Analytics is the critical technology needed to bring value out of data” (Anonymous)
  • 4. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Visual Analytics “The science of analytical reasoning facilitated by visual interactive interfaces” (Thomas and Cook, 2005) “Visual analytics integrates new computational and theory-based tools with innovative interactive techniques and visual representations to enable human-information discourse” (Thomas and Cook, 2005)
  • 5. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Visual Analytics and Linguistics “ Language is a system of relatively arbitrary symbols” (Baker-Shenk and Cokely, 1980) http://www.tableaufit.com/tableau-conference-linguistics-data-visualization/
  • 6. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Visual Analytics (and Corpus Linguistics) 1. Exploration (Queries) 2. Comprehension (Analysis) 3. Communication (Presentation)
  • 7. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Corpus Linguistics Visualization http://scimaps.org/home.html
  • 8. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Visualization Tools Challenges: Many tools are built for non-linguistic research Limited preprocessing Visualization may not fit linguistic data
  • 9. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Visualization Tools Challenges: Many tools are built for non-linguistic research Limited preprocessing Visualization may not fit linguistic data Solution: Reactive Framework Interactive and web-based Research-driven customization Build your own tool!
  • 10. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice 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/
  • 11. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Reactive Architecture
  • 12. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice 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/
  • 13. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice 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
  • 14. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Shiny Library http://littleactuary.github.io/blog/Web-application-framework-with-Shiny/
  • 15. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Shiny Gallery - Get Inspired https://www.rstudio.com/products/shiny/shiny-user-showcase/
  • 16. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice 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
  • 17. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Stopwords Stopwords (e.g. the, and):
  • 18. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Manual Removal of Stopwords
  • 19. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Stemming
  • 20. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Word Cloud Representation
  • 21. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Customization
  • 22. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Format Flexibility Example: Using Google Books API Current limitation is 40 books
  • 23. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Workshop Materials 1. Rstudio 2. R 3. Shiny library 4. Materials: https: //languagevariationsuite.wordpress.com/
  • 24. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice 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 for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice 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 for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice R Studio Structure
  • 27. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Installing Packages In your bottom left window - go to Packages
  • 28. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Selecting Packages - shiny
  • 29. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Creating Scripts Create R File: File → New File → R Script
  • 30. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Execution - RUN To execute - click run In the script (top left window) type: library(shiny) Click Run (your cursor can be at the beginning or at the end of the line)
  • 31. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Shiny Demo runExample(“01 hello”)
  • 32. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Shiny Demo
  • 33. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Shiny Demo
  • 34. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice UI.R
  • 35. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Reactive Input/Output Input - things user can toggle Output - R objects that user can see, often depend on inputs
  • 36. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Closing App
  • 37. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Step 1 - Create New Web Shiny App
  • 38. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Step 2 - Run App
  • 39. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice UI shinyUI( fluidPage( titlePanel(“Old Faithful Geyser Data”), sidebarLayout( sidebarPanel( sliderInput(“bins”, “Number of bins:”, min = 1, max = 50, value = 30)
  • 40. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice UI shinyUI( fluidPage( titlePanel(“Old Faithful Geyser Data”), sidebarLayout( sidebarPanel( sliderInput(“bins”, “Number of bins:”, min = 1, max = 50, value = 30)
  • 41. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Modifying UI - Practice Change slider’s label: Number of bins → Choose a number Change slider’s values: max and value Save RunApp
  • 42. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice HTML The UI script simply creates HTML
  • 43. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice HTML HTML tags: http: //shiny.rstudio.com/articles/tag-glossary.html h1() = header1 br() = line break p() = paragraph hr() = line
  • 44. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Adding HTML Tags to UI.R - Practice shinyUI( fluidPage( titlePanel(“My Title”), h3(“My subtitle”), p(“This is my first app!”), br(), hr(),
  • 45. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Layout http: //shiny.rstudio.com/articles/layout-guide.html
  • 46. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice mainPanel mainPanel( plotOutput(”distPlot”)) Let’s add 3 tab panels: Plot, Summary, Table
  • 47. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice tabsetPanel mainPanel( tabsetPanel( tabPanel(“Plot”, plotOutput(“distPlot”)), tabPanel(“Summary”), tabPanel(“Table”) ) )
  • 48. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Input Data
  • 49. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Input Data 1. Blog https: //languagevariationsuite.wordpress.com/ 2. Download csv file - movie metadata.csv 3. Place this file into the directory myshiny
  • 50. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice New Input in UI.R Let’s look at the fileInput() function from Shiny Reference page Type in your browser: fileInput Shiny or go to the Shiny Reference page - https://shiny.rstudio.com/reference/shiny/ latest/fileInput.html
  • 51. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice New Input in UI.R Scroll down to Examples We will add fileInput function inside sidebarPanel Copy fileInput function
  • 52. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice New Input in UI.R Paste it after slider NB: commas are important!
  • 53. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Reactive Function in Sever.R Reactive - it changes every time the user uploads new data Create a function that reads csv file myfile() is a function that will read and return csv files
  • 54. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Render - Reactive Data
  • 55. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Function summary in Server.R output$summary <- renderPrint({ summary(myfile()) })
  • 56. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice New Output Function table in Server.R output$table <- renderDataTable({ myfile() })
  • 57. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Linking summary and table with UI.R tabsetPanel( tabPanel("Plot", plotOutput("distPlot")), tabPanel("Summary", verbatimTextOutput("summary")), tabPanel("Table", dataTableOutput("table")) )
  • 58. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Linking summary and table with UI.R tabsetPanel( tabPanel("Plot", plotOutput("distPlot")), tabPanel("Summary", verbatimTextOutput("summary")), tabPanel("Table", dataTableOutput("table")) ) RunApp
  • 59. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Testing CSV Upload
  • 60. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice One more IF-Statement - Server.R We want to do a histogram for csv file: if (condition) {do..} else {do...}
  • 61. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice 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’) }
  • 62. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice 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’) } })
  • 63. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice RunApp
  • 64. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Server - Recap
  • 65. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Deployment Options 1. Share server.r and ui.r 2. Host on shinyapps.io 3. Host on Shiny server
  • 66. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Deploy with shinyapps.io www.shinyapps.io sign up for an account. Publish Application button in RStudio and follow instructions
  • 67. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Deploy with shinyapps.io
  • 68. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice My shinyapps.io
  • 69. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice My shinyapps.io
  • 70. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Future of Visualization Tools: CNS Cyberinfrastructure for Network Science Center at Indiana University - http://cns.iu.edu/ Our current project on Shiny Framework (team Olga Scrivner and Jivitesh Poojary) Build Shiny templates for Data Visualization: stage I https: //github.com/Jivitesh-Poojary/CNS-Shiny-Apps Create user-friendly customizable Shiny dashboards: stage II Develop preprocessing plugins for Shiny templates: stage III
  • 71. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice 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/
  • 72. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Thank you! My email: obscrivn@indiana.edu
  • 73. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice References B¨orner, Katy. 2015. Atlas of Knowledge: Anyone Can Map. The MIT Press Collins, Christopher. 2012. Bridging the Linguistic Visualization Divide. LingVis/UNCLH Workshop Grolemund, Garrett. 2017. How to start with Shiny, Part 1. Workshop
  • 74. Data Visualization for Corpus Linguistics: Shiny Framework Olga Scrivner Visual Analytics Reactive Framework Shiny App Practice Credits http: //deanattali.com/blog/building-shiny-apps-tutorial/ http://scimaps.org/mapdetail/stream_of_scientific_128 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