3.27 Data Visualization Final Project

Post Reply
Posts: 160
Joined: Wed Sep 22, 2010 12:26 pm

3.27 Data Visualization Final Project

Post by glegrady » Mon Feb 27, 2012 6:43 pm

Post your final project here including a brief description, screen shot illustration and code
George Legrady

Posts: 14
Joined: Tue Jan 17, 2012 4:40 pm

Re: 3.27 Data Visualization Final Project

Post by rjduranjr » Tue Mar 20, 2012 1:52 pm

RJ Duran
MAT259 Winter 2012
Data Visualization
Final Project

The goal of this project is to visually explore and navigate the connections between words associated with the word “WATER” in book titles from the Seattle Public Library database from 2006 to 2011. By utilizing a partial FP-Tree algorithm to parse incoming book titles I am able to represent visual patterns in associated words. The data is represented as tree structures and volumetric pyramids in a polar plane within a navigable 3D space.


Code: Select all

select title from inraw where title like '%water%' and itemtype like '%bk%';
This query examines the entire database “inraw” for book titles containing the word “water.”

Query Request Time
In Sequel Pro the query takes about 3 or 4 mins to complete. After testing a small query where I looked at a specific day I expanded the search to the entire database. I used a custom Processing program to run the query and save the data into a text file for easy loading into my main visualization. The entire set of data can be seen in http://rjduran.net/MAT/259/final/20052011Data_WATER.txt.

Read about the full process in the writeup
(5.19 MiB) Downloaded 1055 times
http://rjduran.net/MAT/259/final/RJDura ... roject.pdf [Permanent]

Overall this project really pushed my designing abilities, which were very minimal at the beginning. I explored methods for coloring data and representing layers of meaning within a 3D space through an interesting data set.

It also pushed my data filtering, searching, and sorting abilities to look for interesting ways of representing the data. From the data I was able to highlight the connections between water and the occurrence of each word. This string of terms shows the number of times a word happened to appear in a title.

novel:13018 watercolor:9204 elephants:8238 guide:7197 with:5729 from:5460 painting:4064 life:3162 underwater:3148 how:3104 your:2800 techniques:2714 color:2580 book:2437 watermelon:2416 watercolour:2412 watercolors:2366 sea:2328 mystery:2326 black:2302 gardens:2300 you:2267 fish:2198 garden:2118 world:2083 out:2061 like:2041 blue:1978 american:1969 deep:1966 about:1948 complete:1885 northwest:1763 most:1753 blackwater:1735 food:1733 washington:1652 story:1618 light:1615 west:1577 waterfalls:1569 america:1559 living:1507 worlds:1485 army:1473 more:1442 other:1441 all:1434 down:1428 recipes:1418 paint:1407

What this tells us is the most common word used with water is a title is “novel” followed by “watercolor.” This probably indicates that people were checking out mostly guide books, stories about things that have to do with water and watercolor art books. Water for Elephants was also a very popular book among readers.

Additional screen captures can be seen here - http://rjduran.net/MAT/259/final/images/

(1.05 MiB) Downloaded 1831 times
http://rjduran.net/MAT/259/final/FPTree ... _Final.zip [Permanent]
(1.04 MiB) Downloaded 224 times
http://rjduran.net/MAT/259/final/saveQueryAsText.zip [Permanent]

Posts: 7
Joined: Tue Jan 17, 2012 4:42 pm

Re: 3.27 Data Visualization Final Project

Post by davidgordonartist » Thu Mar 22, 2012 10:31 pm

Screen Shot 2012-03-23 at 12.07.24 AM.jpeg
Screen Shot 2012-03-23 at 12.05.41 AM.jpeg
Screen Shot 2012-03-23 at 12.11.13 AM.jpeg
The attachment Screen Shot 2012-03-23 at 12.05.41 AM.jpeg is no longer available
This project is a 3D visualization of all checkout transactions at the Seattle Public Library between April 11-15, 2011. The height and color of the boxes indicates the number of transactions for that hour and Dewey category on a particular day. The user can navigate the 3D space and change the date displayed using the number keys 1-5.

The Query:

select floor(deweyClass) as deweyCl, HOUR(cout) as hourCout, count(*) as hourCount from inraw where deweyClass != 'null' and date(cout) = '2011-04-11' group by deweyCl, hourCout order by deweyCl, hourCout;

Full Processing Code:
(2.4 MiB) Downloaded 310 times
Last edited by davidgordonartist on Mon Mar 26, 2012 6:51 pm, edited 4 times in total.

Posts: 9
Joined: Tue Jan 17, 2012 4:40 pm

Re: 3.27 Data Visualization Final Project

Post by hanyoonjung » Fri Mar 23, 2012 11:28 pm

MAT 295 Winter 2012
Final Project: 3D Visualization
by Yoon Chung Han

Project title: Earth

The main goal of this project was to explore total transactions between 2005-2011 related to "Earth." The query searched the whole transactions that had more than 20,000hours(833days, 2.28years) checked out duration. The book contents included "Earth" in titles or keywords.


select FLOOR(deweyClass/10)*10 as subgroup, TIMESTAMPDIFF(HOUR, cout, cin), title, cout, cin from spl0.inraw where (deweyClass <> 'null' OR deweyClass <> NULL) and (TITLE LIKE '%earth%' OR 'subject1' LIKE '%earth%' OR 'subject2' LIKE '%earth%' OR 'subject3' LIKE '%earth%' OR 'subject4' LIKE '%earth%' OR 'subject5' LIKE '%earth%' OR 'subject6' LIKE '%earth%' OR 'subject7' LIKE '%earth%' OR 'subject8' LIKE '%earth%' OR 'subject9' LIKE '%earth%' OR 'subject10' LIKE '%earth%' OR 'subject11' LIKE '%earth%' OR 'subject12' LIKE '%earth%' OR 'subject13' LIKE '%earth%' OR 'subject14' LIKE '%earth%' OR 'subject15' LIKE '%earth%' ) and (TIMESTAMPDIFF(HOUR, cout, cin)) > 20000 and year(cout) >= 2005 and year(cin) <= 2011 ORDER BY 'TIMESTAMPDIFF(HOUR, cout, cin)' ASC;

The overall visuals looked like a 3D sphere or Earth. Each different colors represented different Dewey classes. There are two parts of designs: first one is based on 3D sphere structure. Second one is a text sphere. Based on timely spiral shape, small spheres were situated from top to bottom, and the radii of spheres represented the duration of transactions. And the lines across the spheres connected each checked out and in items with the same dewey colors. You can see only spheres, or lines by pressing key 1,2,3. Also, each year,month,day date and duration numbers show up next to each spheres when you press key 4. Finally, all the book titles are shown up from the center, and spread toward to outside. (key 5)

Processing Code is here: http://www.yoonchunghan.com/MAT259/Proj ... _Final.zip

Posts: 4
Joined: Tue Jan 17, 2012 4:39 pm

Re: 3.27 Data Visualization Final Project

Post by muhammadhafiz » Tue Mar 27, 2012 11:33 am

Muhammad Hafiz Wan Rosli
MAT259 Winter 2012
Data Visualization
Final Project
(4.13 MiB) Downloaded 206 times
(516.03 KiB) Downloaded 228 times
(13.05 KiB) Downloaded 204 times

Posts: 10
Joined: Tue Jan 17, 2012 4:41 pm

Re: 3.27 Data Visualization Final Project

Post by anisbharon » Tue Mar 27, 2012 11:36 am

Anis Haron

Final project screenshots:
Screen shot 2012-03-27 at 12.14.47 PM.png
Screen shot 2012-03-27 at 12.14.18 PM.png
Screen shot 2012-03-27 at 12.15.24 PM.png
Screen shot 2012-03-27 at 12.15.42 PM.png
Screen shot 2012-03-27 at 12.16.09 PM.png
(55.03 KiB) Downloaded 302 times
This project displays checkouts in each dewey class category (000 to 900) for the year 2009, 2010 and 2011. Total number of checkouts and absolute difference in percentage is displayed in a radar map, stretched into the z axis with each 'slice' representing one business day. Day, Month and Year selected are displayed on the top left, a 2d radar map along with the actual number of checkouts and difference percentage are displayed on the right hand side of the screen. User navigate through days using a slider located at the bottom of the screen.

This visualization allows user to compare checkouts of a given day and month between the year 2009, 2010 and 2011. Shows the whole pattern of checkouts and the difference between the selected day and the previous day in a given year.

Posts: 7
Joined: Tue Jan 17, 2012 4:43 pm

Re: 3.27 Data Visualization Final Project

Post by dallasmercer » Tue Mar 27, 2012 12:07 pm

Dallas Mercer
MAT 259 - Winter 2012
Data Visualization
Final Project

The goal of this final project is to represent a correlation between two related topics using data from the Seattle Public Library in a 3D visualization. I chose to use an earlier project (2D Spatial Map) as my reference and starting point, which was based on Pregnancy and the total amount of checkouts per month over the span of 7 years. I wanted to add a 2nd set of data to the final project and decided to use Birth as the topic and see if there was a direct correlation between the two. I was inspired by the typical bar graph visualization that is commonly seen in 2D and wanted to take it into the 3rd dimension. I was also imagining the way a crystal forms, with its sharp/shard like extensions, and also the way French fries pop out of the top of their box.

Select year(cout), month(cout), count(*) from inraw where title like '%birth%' and cout > '2006-01-01' and cout < '2012-01-01' group by month(cout), year(cout) order by year(cout), month(cout);

(Replace “birth” with “pregnan” to get data for pregnancy results)

This query calls the entire database “inraw” for all titles containing the word “birth” and/or “pregnancy” from the years 2006-2011.

Query Request Time
Using Sequel Pro, each query completion time for “birth” and “pregnan” took approximately 4 minutes to complete. In order to avoid this 4 minute delay each time the Processing sketch is ran, I saved both sets of data as a text file and saved it within the Processing folder. (savedData1.txt and savedData2.txt)

To begin, this was my very first 3D project design in Processing and my fifth Processing project overall. I was both technically and aesthetically challenged throughout this project but am very pleased with the results.
I did in fact find a strong correlation between Birth and Pregnancy over the 6-year span. This was quite evident from the numbers alone but even more clear when expressed in the 3D visualization. It seems that there are more checkouts for these two titles during the first 4 or 5 months of the year, especially during the years 2009-2010. I was trying to propose a hypothesis as to why these two years have the most checkouts but couldn’t find any information to support it.
Final Project.zip
Final Project folder containing all code & query files
(178.42 KiB) Downloaded 270 times
Screen Shot 2012-03-27 at 12.58.52 PM.png
Side view of the purple Pregnancy boxes
Screen Shot 2012-03-27 at 1.00.05 PM.png
Side view of the blue Birth boxes
Screen Shot 2012-03-27 at 12.58.23 PM.png
View of both data sets from a distance

Posts: 7
Joined: Tue Jan 17, 2012 4:08 pm

Re: 3.27 Data Visualization Final Project

Post by ansh2201 » Tue Mar 27, 2012 12:17 pm

Project 3 - 3D Treemap

The aim of this project is to extend the capabilities of a 2d treemap visualization and still maintaining hierarchical relationships. In this project, I have represented each tower (cuboid) as a dewey category with the area of the tower representing the average checkout duration for the dewey category in a particular month (You can scroll through the month using keys - 'q' or 'w') and the height representing the total number of checkouts in a month. Each dewey category tower is then subdivided into layers to provide information about each of the sub dewey categories. Each layer represents a sub dewey category and the vertical bars in each layer represent the number of checkouts on each day for the sub-dewey category. Red represents very high activity and black represents zero or very minimal activity.


Code: Select all

Query to get Day wise data for all months, deweys and sub-deweys
select FLOOR(deweyClass/100)*100 dewey, FLOOR(deweyClass/10)*10 deweySub, month(cout) month, day(cout) day, count(*)
from spl0.inraw
(deweyClass <> 'null' OR deweyClass <> NULL)
and year(cout) = 2011
group by dewey, deweySub, month, day 
order by dewey, deweySub, month, day;

Code: Select all

Query to get Average Checkout Duration and Number of Checkouts per month for eacch Dewey Category.
select FLOOR(deweyClass/100)*100 dewey, month(cout) month, count(*), avg(TIMESTAMPDIFF(DAY, cout, cin))
from spl0.inraw
(deweyClass <> 'null' OR deweyClass <> NULL)
and year(cout) = 2011
group by dewey, month 
order by dewey, month;
Screenshot 1
Screenshot 2
Screenshot 3
1. q/w - use these keys to scroll through each month.
2. g - to switch on the axis lines
3. m - to change color mode. 3 modes are supported - grayscale, red/black and all colors.

Source code with Data
Source code
(469.52 KiB) Downloaded 657 times
Changes since project demo
1. Added axial information to represent - x, y and z axis.
2. The issue with the borders has been fixed.
3. Increased the font size for each dewey category (in the 2d treemap view from the top).

Post Reply