Programming
|
Create a Scatterplot visualization that reads data
from a comma-separated text file. The visualization
code should be written in Java using Processing.
You can use another programming language and system if you wish.
A scatterplot treats each data item
as an independent entity. Each entity is plotted separately.
The visualization must have the following features:
-
Object-Oriented. Build a class entitled ScatterPlotPoint that
stores all of the visual dimensions of an individual point and
plots it on the screen.
Each plotted point will be an instance of this class.
-
Multiple visual attributes are supported:
- Plot mark along the X Axis
- Plot mark along the Y Axis
- Color of the mark
- Size of the mark
- Either shape or orientation of the mark
-
Automatic scaling. The Plot should be automatically sized on
the basis of the variables that are assigned to the X and Y dimensions.
-
Grid Marking. The axes should have tick marks appropriate to the X and Y
values to mark regular data intervals.
-
Variable Assignment. Data Variables can be assigned to any of the different visual attributes.
-
Interaction. There must be a combobox that assigns data dimensions to visual dimensions.
There must be an interaction technique per visual dimension.
-
Filtering: Interactively filter out data the falls outside
of boundaries that you set.
The filters should apply to the currently mapped visual dimensions.
A filter must be interactively enabled/disabled.
|
Advice
|
Advice
|
Use the matrix stack of transformations.
This set of transformations for each item is isolated from the others
by pushing the current transformation on the matrix stack.
|
Advice
|
Parse the data file by using loadStrings()
This is a Processing built-in function that reads in all of a text file
into a single array of strings.
IAT355_Sample_Asst1.pde contains a
chunk of code that you can use to read in the test data file
data.txt.
This data file has 4 data cases. There are three variables.
|
Data
|
The Iris dataset is a famous visualization testbed dataset that
contains 150 cases of Irises found on the Gaspe Peninsula.
There are 5 variables: Sepal Length, Sepal Width,
Petal Length, Petal Width, Species.
IrisDataset.csv
|
Data
|
To use your data file in Processing, put the data in a folder entitled
data within your code's folder.
Hand in a zip file with the data file and the code so that the TA can run it as necessary.
|
Hand In
|
Please hand in (upload):
The code you wrote. If you extended the example code,
then hand that in.
We need to be able to unpack the zip file and go the the resulting folder and run your program.
Be prepared to run the program in the Open Lab on February 2.
and show it to the TA.
|