CMSC110 (Introduction to Computing)
Spring 2015
Assignment#4
Due before start of class on Thursday, Mar 19, 2015
First, read Chapter 5 from GXK.
Task: Develop a processing program that enables
a user to visualize some time series data. Your program
should allow the major trends in the time series to be easily
visible. Additionally, your program should allow for some
form of interaction between the user and the data (some
suggestions are given below).
Your program should be able to read in the time series data from a
file, parse the data with Processing, and then use Processing to
display the data in a clear and aesthetically pleasing manner.
You should consult Chapter 5 of GXK to get some ideas for effective
methods of visualizing time series (e.g. line charts, bar charts,
heat maps, etc.). However, you are by no means limited to the
formats presented in the GXK chapter. Above all, the choice of
visualization format should be informed by the story that you want
to tell about your particular time series data.
Don't be afraid to be creative! Visual enhancements that don't
necessarily convey additional information but make the presentation
of the data more interesting and aesthetically pleasing are
encouraged.
Steps for developing interactive data visualization:
- Acquire the data set as one or more files.
You should select a dataset that lends itself to telling an
interesting story through visualization. Data sources are plentiful:
web sites, technical articles, or collect your own
data. Find something that interests you.
Make sure the data set is not too small, i.e., make sure the data
has some statistical significance. Your data set should have at least 100 data points.
You may want to
obtain data from one of the following sites that serve as data
clearinghouses: data.gov and datamarket.com.
Here are some timeseries datasets (you do not have to use one of these!):
- Clean up the data file so that it is readable by a computer program.
- This may mean replacing comments with special numeric codes, inserting/removing data
value delimiters, etc.
- Filter the data down to the portion that interests you.
- Remove unwanted columns, headers, footers, etc.
- Mine the data set for interesting properties.
- Find the aspect(s) of your data set that you want to highlight using your
visualization.
- Apply any statistical methods or numerican analysis that are appropriate.
- Select a visual representation that best illustrates your data set and
implement it.
- Draw from all the graphical techniques that you have learned so far.
- Refine your visualization.
- Modify your program until it communicates your message at a glance.
- Make your visualization interactive and/or animated.
Here are a few suggestions for how you might add an
interactive element to your sketch:
- Use text to display the exact value of a datapoint when the
mouse hovers over the relevant portion of the visualization.
- Zoom in on a particular segment of the time series by clicking
the mouse on a segment of a line graph.
- Toggle the appearance of a moving average line with the click
of a button.
- Pop up a textbox that shows extra information when hovering over an
object, animated objects that change shape, size or color to represent data in a
time time series, etc.
Remember to pay special attention to the aesthetic aspects of your
design as well as interactivity.
What to Hand in: Hand in the entire sketch
folder in your Dropbox folder. In addition to the sketch/programs
also include; (1) a gif/jpg/png image of your finished sketch.
On your sketch, provide the source of the data. (2)
A formatted write-up with Page#1 showing your sketch, followed by
a title, your name, a short 1-2 line description (as discussed in
class) on page#1, and a short 1-2 paragraph more detailed
description of the sketch and your personal experiences working on
this sketch.
Back to CMSC110 Course Web Page