2018 Project 3

You Spin Me Round

Project alpha version due 4/16/18 at 8:59 pm Chicago time
Project final version due 4/30/18 at 8:59 pm Chicago time

Project 3 will be the second group project and the focus here will be on visualizing data with a strong geographic component, in particular tornadoes in Illinois.

You can keep your group from Project 2 or form new groups. Send Andy an email once you know your group for project 3 (even if it is the same as for project 2).
I will create groups for people that do not form groups on their own. Again the standard group size will be 3 or 4 people per group.
 
As with Project 2 you should very quickly set up a web page for your new group project and send the URL to andy. Each Friday of the project each team member should post on the project web site an overview of what he/she did on the project that week.



As our classroom wall now has a couple more columns the aspect ratio and total size of the screen you will be writing your app for has changed. The screen size is now 6800 by 2304 but assume some space will be lost for borders, tool bars etc.



The data for this project is available from
http://www.spc.noaa.gov/wcm/index.html#data

with a description here that you should read carefully
http://www.spc.noaa.gov/wcm/data/SPC_severe_database_description.pdf

please read the description carefully. Note that the date on the meta-data file is 2010 and there have been some changes to the data that are not reflected in the meta-data, in particular in the losses... as always look at the data. This is a very common occurrence.

and you will also need to get a list of the FIPS county codes (note Illinois is state code 17)

The data is about 7MB total for the entire US for the last 65 years covering about 62,000 tornadoes for the entire US over that period, but only about 2,500 in IL

The data we are going to focus on includes:
    date
    time
    state
    magnitude
    injuries
    fatalities
    loss
    start lat + lon
    end lat  + lon
    length
    width
    FIPS county codes



In this project we are going to take a look at data about the relative strength and damage from tornadoes across the state and across the last 65 years.


For a C you need to create a useful, responsive interactive visualization focusing on Illinois


For a B you need to add:


For an A you need to add:


Graduate Students need to add:


In all of these case you need to make sure that your visualizations are well constructed with good color and font choices, proper labeling, and that they effectively reveal the truth about the data to the user

Note that as part of the web page part of the grade you will need to use your interface to show your findings, so make sure that the way your interface displays information is clear.

As with all the projects your app will be evaluated running full screen with touch interaction on the classroom wall.


For this project you should host your solution using Shinyapps.io or the evl shiny server



There are two deadlines for this project. By the first deadline you should have implemented the initial screen layout of your application and have the basic functionality allowing the user to perform an example of the various 'C' functionality. This will make sure that your group is on track and that you can focus on making a good interface and set of visualizations, not just functional ones. Personally, I think you should have the entire C functionality done at that point if you are going for an A on the project as a whole. You should make this version of the interface available on your group project page.

As part of the final turn in you should create a set of web pages that describe your work on the project. This should include:

all of which should have plenty of screenshots with meaningful captions. Web pages like this can be very helpful later on in helping you build up a portfolio of your work when you start looking for a job so please put some effort into it.

Be sure to document any external libraries or tools that you make use of - give credit where credit is due.

You should also create a 2-3 minute YouTube video showing the use of your application including narration with decent audio quality. That video should be in a very obvious place on your main project web page. The easiest way to do this is to use a screen-capture tool while interacting with your application, though you will most likely find its useful to do some editing afterwards to tighten the video up. Its also a good idea to have a video like this available as a backup during your presentation just in case of gremlins.
You may want to shoot this video on the wall itself.

The web page including screen snapshots and video need to be done by the deadline so be sure to leave enough time to get that work done.

I will be linking your web page to the course notes so please send andy and saumya a nice jpg image of your visualization for the web. This should be named p3.<someone_in_your_groups_last_name>.jpg. 



When the project is done, each person in the group should also send Andy a private email with no one else CC'd ranking your coworkers on the project on a scale from 1 (low) to 5 (high) in terms of how good a coworker they were on the project. If you never want to work with them again, give them a 1. If this person would be a first choice for a partner on a future project then give them a 5. If they did what was expected but nothing particularly good or bad then give them a 3. By default your score should be 3 unless you have a particular reason to increase or decrease the number. If you are giving a score other than 3 you need to say why. Please confine your responses to 1, 2, 3, 4, 5 and no 1/3ds or .5s please. Each person's score on the project will be based on the overall score for the group modified by these rankings.



Each group will show their visualization to the class and describe its features. This allows everyone to see a variety of solutions to the problem, and a variety of implementations. Rehearse your presentation ... several times. All team members are expected to participate equally in that presentation.




Project 3 groups:

1. Sohal, Barapatre, Revanna Shivaprabhu, Phaltankar
2. Sinha, Katwala, Thmmu
3. Struck, Janowski, Stranczek
4. Mahida, Kupiec, Lindmae
5. Borges, Hauck, Khan, Chandarana
6.
Hanula, Kirilov, Biegaj
7.
Flower, Nishimoto, Guo, Azhari 
8.
Pham, Galante, Waller
9.
Rojas Hernandez, Rice, Hao, Basu
10.
Al-Khatib, Samad, Arcivar, Vig, Velazquez


Note that group numbers are changing for project 3 and there will be new accounts on the shiny.evl.uic.edu server.

These new accounts will be in the form p3g#




current list of packages installed on the evl shiny server:

> ip <- as.data.frame(installed.packages()[,c(1,3:4)])
> rownames(ip) <- NULL
> ip <- ip[is.na(ip$Priority),1:2,drop=FALSE]
> print(ip, row.names=FALSE)
         Package    Version
      assertthat      0.2.0
       backports      1.1.2
       base64enc      0.1-3
              BH   1.66.0-1
           bindr        0.1
        bindrcpp        0.2
           broom      0.4.4
           callr      2.0.3
      cellranger      1.1.0
             cli      1.0.0
      colorspace      1.3-2
          crayon      1.3.4
       crosstalk      1.0.0
            curl        3.1
      data.table   1.10.4-3
             DBI        0.8
          dbplyr      1.2.1
         debugme      1.1.0
        devtools     1.13.5
       dichromat      2.0-0
          digest     0.6.15
           dplyr      0.7.4
              DT        0.4
        dygraphs    1.1.1.4
        evaluate     0.10.1
        fasttime      1.0-2
         forcats      0.3.0
           gdata     2.18.0
         geojson      0.2.0
       geojsonio      0.5.0
       geosphere      1.5-7
         ggplot2      2.2.1
         ggrepel      0.7.0
        ggridges      0.4.1
        ggthemes      3.4.0
           git2r     0.21.0
            glue      1.2.0
       gridExtra        2.3
          gtable      0.2.0
          gtools      3.5.0
           haven      1.1.1
          hexbin     1.27.2
           highr        0.6
             hms      0.4.2
       htmltools      0.3.6
     htmlwidgets        1.0
          httpuv      1.3.5
            httr      1.3.1
            jpeg      0.1-8
             jqr      1.0.0
        jsonlite        1.5
           knitr       1.19
        labeling        0.3
        lazyeval      0.2.1
         leaflet      1.1.0
       lubridate      1.7.3
        magrittr        1.5
         mapproj      1.2-5
            maps      3.2.0
        maptools      0.9-2
        markdown        0.8
    measurements      1.2.0
         memoise      1.1.0
            mime        0.5
          mnormt      1.5-5
          modelr      0.1.1
         munsell      0.4.3
         openssl        1.0
          pillar      1.0.1
       pkgconfig      2.0.1
           plogr      0.1-1
          plotly      4.7.1
            plyr      1.8.4
             png      0.1-7
          praise      1.0.0
       protolite        1.7
           psych    1.8.3.3
           purrr      0.2.4
              R6      2.2.2
          raster      2.6-7
    RColorBrewer      1.1-2
            Rcpp    0.12.14
           readr      1.1.1
          readxl      1.0.0
         rematch      1.0.1
          reprex      0.1.2
         reshape      0.8.7
        reshape2      1.4.3
           rgdal     1.2-16
           rgeos     0.3-26
           rlang      0.2.0
       rmarkdown        1.8
       rprojroot      1.3-2
      rstudioapi        0.7
           rvest      0.3.2
          scales      0.5.0
         selectr      0.4-1
           shiny      1.0.5
         shinyBS       0.61
 shinycssloaders      0.2.0
  shinydashboard      0.6.1
         shinyjs 1.0.1.9000
     shinythemes      1.1.1
    shinyWidgets      0.4.2
     sourcetools      0.1.6
              sp      1.2-6
     streamgraph      0.8.1
         stringi      1.1.6
         stringr      1.2.0
        testthat      2.0.0
          tibble      1.4.1
           tidyr      0.8.0
      tidyselect      0.2.4
       tidyverse      1.2.1
         txtplot      1.0-3
            utf8      1.1.3
              V8        1.5
         viridis      0.4.1
     viridisLite      0.2.0
         whisker      0.3-2
           withr      2.1.1
            xml2      1.2.0
          xtable      1.8-2
             xts     0.10-2
            yaml     2.1.16
             zoo      1.8-1


last revision 4/23/18 - updated list of installed packages
4/12/18 - added list of current R packages on evl shiny server
4/1/18 -
updated project groups
3/28
/18 -  moved alpha due date back 1 week
3/25/18 -  added notes on new accounts on the evl shiny server