Project 2 will be the first group
project and will focus on interactive visualization about airline
flights in Illinois. While project 1 showed a variety of pretty
much static visualizations, project 2 will focus on more
interactive visualizations that can be used to investigate a
dataset.
The standard group size will be 3 or 4 people per group. You can
chose who you want to be in a group with. I will create groups on
Sunday 2/18 for people that have not formed groups on their own,
but you must email me that you are continuing in the class and
want to be placed into a team - I do not want to create teams with
people that are not going to be serious about working with their
partners. Be sure to take a look at the project 1 web pages to get
a better idea of people's abilities as you form your teams. Once
you have a team please send andy an email CC'd to all the team
members confirming that you are a group.
You should very quickly set up a web page for your group project
and send the URL to andy. The final webpage for the project will
be public; the in-process web pages do not need to be public as
long as andy and the TA have access. 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. This comes in handy
when assigning ratings to your collaborators and making sure that
everyone is contributing in a timely fashion.
The data for this project is
available from
https://www.transtats.bts.gov/DL_SelectFields.asp?Table_ID=236&DB_Short_Name=On-Time
You may also find this script helpful:
https://gist.github.com/bbengfort/7322184
We are going to focus on Illinois (filter geography on the site)
in 2017, so the data is roughly is 6MB per month.
The data to focus on includes:
FlightDate
Carrier
FlightNum
OriginAirportID
OriginCityName
DestAirportID
DestCityName
DepTime (local time)
ArrTime (local time)
Cancelled
Cancellation Code
AirTime
Distance
5 causes of delay
Note that there are quite a few Illinois and Chicago airports -
there is a lookup table on the same website to disambiguate the
airport IDs
As of 'now' there is data available through November 2017. If all
goes well the data for December should also be available before
the project is due.
For a C you need to create a useful,
responsive interactive visualization for 1 month focusing on
O'Hare and Midway
- choose a month from 2017 where the data is available
- for each airport (Midway and O'Hare) show
- table and chart showing the total number of departures
and total number of arrivals for all
of the domestic airlines (i.e. the total arrivals for united and
total departures for united, and total arrivals for
american and total departures for american, etc.)
- table and chart showing the total number of departures
and total number of arrivals for each hour of the day
across that month (i.e. how many from 9am to 10am summed
over every day of that month)
- table and chart showing the total number of departures
and total number of arrivals for each day of the week
across that month (i.e. how many on all of the mondays of
that month)
- table and chart showing the total number of delays for
each hour of the day across that month (i.e. how many from
9am to 10am summed over every day of that month), and what
percentage that is of the total for that hour
- table and chart showing the number of flights for the
most common 15 arrival and destination airports
- allow the user to compare the numbers across both airports
(the charts have the same scale) or better focus on each
individual airport (the charts have different scales)
- allow the user to switch between 12 hour am/pm time to 24
our time display easily
- allow the user to bring up information about the project,
as in Project 1
For
a B you need to add:
- allow a user to pick a month from all of the available
months from 2017 and see the data from the 'C' part for that
month
- help user to easily compare how the total # of departures
and arrivals for all of the domestic
airlines (again broken down by airline) change
over each of the 12 months
- help user to easily compare how the total number of
departures and arrivals for each hour change over each of
the 12 months
- help user to easily compare how the number of flights for
the most common 15 destinations change over each of the 12
months
- help user to easily compare how the number and type of
delays change over each of the 12 months
For
an A you need to add:
- allow a user to pick a
destination/arrival airport from the top 50 and see how the
number of flights to and from that location change over the
24 hours of the day and the 12 months of the year
- allow a user to pick an
airline from all of the domestic
airlines and see how the number of departures and arrivals
for that airline change over the 24 hours of the day and the
12 months of the year
- allow a user to pick a date
in 2017 for more detail on the 24 hour breakdown of that day
(how many departures and arrivals per hour, how many delays
per hour)
- allow a user to pick a day of
the week for more detail on the 24 hour breakdown of that
day of the week across the year (how many departures and
arrivals per hour, how many delays per hour)
- allow a user to pick a type
of delay for more info on how it changes over the 24 hours
of the day and the 12 months of the year
- give the user quick access to a table of 10 'interesting'
days for air travel in 2017 (e.g. busiest travel days of the
year, holidays, days affected by hurricanes, or failures at
particular airports)
- allow a user to show how many and what percentage of
flights depart to and arrive from different states within
the US (including flights within IL)
Graduate
Students need to add:
- allow a user to compare how many arrivals and departures
are to and from different distances away.
- allow a user to compare how many arrivals and departures
are to and from different flight times away.
- allow the user to switch between imperial and metric units
easily
- integrate another dataset or two from the transtats site (one or two
depending on the complexity of the dataset you choose) or another site with related data such as
weather
- in week 4 we looked at the 'five years of traffic
fatalities' heatmaps. create a set of 4 similar heatmaps
showing day of the week vs time of day and month of year vs
time of day for interesting variables of your choice.
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 on the
classroom wall and should not require scrolling
For this project you should again host your solution using
Shinyapps.io or through the
shiny.evl.uic.edu site
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 a link to 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:
- 1 page with a link to your visualization solution and a
description of how to use your application and the things you
can do with it.
- 1 page on the data you used, including where you got it,
what you did to it.
- 1 page with links to a zip file containing your well
commented source code, additionally needed data files, and any
instructions necessary to run it. These instructions should
start from the assumption that the reader has a web browser on
their computer and tell the user everything else he/she needs
to know and do to get it running using R studio.
- 1 page on what interesting things you found using your
application. This one is particularly important. Show that you
can use your application to find interesting things in the
dataset and show the screenshots to prove it.
- 1 page on the roles of the different team members
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 me a
nice jpg image of your
visualization for the web. This should be named
p2.<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.
Has a group:
1. Sohal, Barapatre, Revanna Shivaprabhu, Phaltankar
2. Sinha, Katwala, Thmmu
3. Flower, Nishimoto, Guo, Azhari
4. Pham, Galante, Waller
5. Mahida, Kupiec, Lindmae
6. Borges, Hauck, Khan, Chandarana
7. Rojas Hernandez, Rice, Hao, Basu
8. Struck, Stranczek, Janowski
9. Hanula, Kirilov, Vig
10. Arcivar, Samad, Velazquez, Biegaj,
Al-Khatib