Proj 5 - 3D Spatial Interactive
Proj 5 - 3D Spatial Interactive
This is the final project for this course. It introduces OpenGL, and the PeasyCam library. The goal of the project is to position SPL data in a 3D, x,y,z volumetric space. For the ambitious ones, time can also be introduced to become a 4D project (x,y,z,t). You can also think of time as movement. Change in time can be recorded through movement, or change of brightness, or change of volume of a point. Please review examples at: http://survey.timeviz.net/
It is relevant to think further about the various ways by which the SPL data can be organized. For each transaction we have metadata that is numeric (sequence like bib), categorical (Itemtypes), date/time, quantitative (how often something happens), labels (keywords) and others. The challenge is how to make the most of these expressed in a 3D matrix space.
The schedule for this project is:
March 5 - 3D demos (RJ Duran, Qian Liu, Yoon Huang Han)
March 7 - lab, post initial proposals
March 12,14 - Lab, individual meetings
March 19 - Final Presentation, and delivery of material for all projects
It is relevant to think further about the various ways by which the SPL data can be organized. For each transaction we have metadata that is numeric (sequence like bib), categorical (Itemtypes), date/time, quantitative (how often something happens), labels (keywords) and others. The challenge is how to make the most of these expressed in a 3D matrix space.
The schedule for this project is:
March 5 - 3D demos (RJ Duran, Qian Liu, Yoon Huang Han)
March 7 - lab, post initial proposals
March 12,14 - Lab, individual meetings
March 19 - Final Presentation, and delivery of material for all projects
George Legrady
legrady@mat.ucsb.edu
legrady@mat.ucsb.edu
Re: Proj 5 - 3D Spatial Interactive
Introduction
As social media such as Facebook or Twitter become more important in our daily life, they are considered as crucial tools for various objectives. For instance, most of the major companies use them to develop aggressive marketing strategies. Moreover, recently, Twitter has been widely used as a tactical medium for political campaigns in many countries.
Therefore, I would like to visualize the distribution of transactions of contents which contain one of the most frequently used social media: Twitter, Facebook and LinkedIn. Each of the above social networking services has a distinctive character of its own.
... continued in the linked document.
https://docs.google.com/document/d/1zzL ... vrvrfI/pub
As social media such as Facebook or Twitter become more important in our daily life, they are considered as crucial tools for various objectives. For instance, most of the major companies use them to develop aggressive marketing strategies. Moreover, recently, Twitter has been widely used as a tactical medium for political campaigns in many countries.
Therefore, I would like to visualize the distribution of transactions of contents which contain one of the most frequently used social media: Twitter, Facebook and LinkedIn. Each of the above social networking services has a distinctive character of its own.
... continued in the linked document.
https://docs.google.com/document/d/1zzL ... vrvrfI/pub
- Attachments
-
- socialmedia_3d_v2.zip
- (357.45 KiB) Downloaded 326 times
Last edited by bkang on Wed Mar 27, 2013 8:35 am, edited 6 times in total.
-
- Posts: 6
- Joined: Fri Jan 11, 2013 10:32 am
Re: Proj 5 - 3D Spatial Interactive
Here's a rough sketch of the visualization I'd like to do.
https://docs.google.com/document/d/1D1- ... QMJ4U/edit
https://docs.google.com/document/d/1D1- ... QMJ4U/edit
Re: Proj 5 - 3D Spatial Interactive
The graph is tracking the tred of top 10 checked DVD in the library in the period 2006-2011.
beta version preview
----------------------------------------------------------
Version 2
Project description
https://docs.google.com/document/d/1HUa ... i7UJg/edit#
sketch
beta version preview
----------------------------------------------------------
Version 2
Project description
https://docs.google.com/document/d/1HUa ... i7UJg/edit#
sketch
- Attachments
-
[The extension rar has been deactivated and can no longer be displayed.]
Last edited by giovanni on Wed Mar 27, 2013 11:33 am, edited 5 times in total.
-
- Posts: 5
- Joined: Tue Jan 15, 2013 1:22 pm
Re: Proj 5 - 3D Spatial Interactive
3D Visualization Travel Checkouts by Country
Ramon Rovirosa
The point of my visualization was to track books & other media items about the subject of travel from around the world in a 3d space. The information is displayed with a cylinder for each country over its Latitude and Longitude, and the cylinder height representing the number of checkouts for books on that country. One can also search for a regions such as the Middle East, Europe, Africa, South America, etc...
The Query:
SELECT title as Title,
Count(IF(subj like '%travel%', 1, NULL)) as travelCount
FROM inraw where subj like '%travel%'
GROUP BY title
Having Count(IF(subj like '%travel%', 1, NULL)) > 1;
Evaluation:
Overall, this project went through many changes and restructurings. The hardest part was to display all the information I wanted to effectively. Working in 3d was fun yet challenging. I hope that from the visualization with minimal explanation a patron could look at my project and understand what I was trying to convey.
Ramon Rovirosa
The point of my visualization was to track books & other media items about the subject of travel from around the world in a 3d space. The information is displayed with a cylinder for each country over its Latitude and Longitude, and the cylinder height representing the number of checkouts for books on that country. One can also search for a regions such as the Middle East, Europe, Africa, South America, etc...
The Query:
SELECT title as Title,
Count(IF(subj like '%travel%', 1, NULL)) as travelCount
FROM inraw where subj like '%travel%'
GROUP BY title
Having Count(IF(subj like '%travel%', 1, NULL)) > 1;
Evaluation:
Overall, this project went through many changes and restructurings. The hardest part was to display all the information I wanted to effectively. Working in 3d was fun yet challenging. I hope that from the visualization with minimal explanation a patron could look at my project and understand what I was trying to convey.
- Attachments
-
- CountryClass.zip
- (20.63 MiB) Downloaded 331 times
Last edited by ramon.rovirosa on Mon Mar 25, 2013 8:06 pm, edited 6 times in total.
-
- Posts: 5
- Joined: Fri Jan 11, 2013 10:38 am
Re: Proj 5 - 3D Spatial Interactive
3D Visualization of Top Ten Album Checkouts per Month
Drew Waranis
This is my attempt to create a 3D tree-map visualizing * -> year -> month -> (Top Ten Albums) .
Query
Needs to be retrieved from my crashed HDD's backup.
Drew Waranis
This is my attempt to create a 3D tree-map visualizing * -> year -> month -> (Top Ten Albums) .
Query
Needs to be retrieved from my crashed HDD's backup.
Last edited by andrewwaranis on Tue Mar 19, 2013 11:10 am, edited 1 time in total.
Re: Proj 5 - 3D Spatial Interactive
final project
Yeu
Yeu
- Attachments
-
- MAT259proj5.docx
- description
- (2.26 MiB) Downloaded 304 times
-
- proj_final_yeushuan.zip
- (21.29 KiB) Downloaded 261 times
Last edited by ytang on Tue Mar 26, 2013 6:13 pm, edited 3 times in total.
Re: Proj 5 - 3D Spatial Interactive
Intro
For this project, I was interested in visualizing the frequency of occurrence of country names in the subject of books over time. I thought that perhaps the many world events of the past few years may be discernible in the data fluctuations of book checkouts. And, since this project was in 3D, I thought why not visualize something geographical like this on an actual globe. The result is a sphere-based 3D bar graph showing popularity over time of all the major countries around the world based on book checkouts.
Before I could pursue this idea I needed to make sure there was a way of determining the latitude and longitude of every country. Luckily, this information is publicly available on several websites in the form of a CSV, organized by country code (a universal two character sequence unique to each country). Since some countries have special characters or symbols in their title, it was important to sanitize all strings before performing SQL queries, and use the country code wherever possible.
Query
SELECT
sum(case when (subject = 'andorra' or subject like 'andorra %' or subject like '% andorra' or subject like '% andorra %') then 1 else 0 end) as 'andorra',
sum(case when (subject = 'united arab emirates' or subject like 'united arab emirates %' or subject like '% united arab emirates' or subject like '% united arab emirates %') then 1 else 0 end) as 'united arab emirates',
...
sum(case when (subject = 'south africa' or subject like 'south africa %' or subject like '% south africa' or subject like '% south africa %') then 1 else 0 end) as 'south africa',
sum(case when (subject = 'zambia' or subject like 'zambia %' or subject like '% zambia' or subject like '% zambia %') then 1 else 0 end) as 'zambia',
sum(case when (subject = 'montenegro' or subject like 'montenegro %' or subject like '% montenegro' or subject like '% montenegro %') then 1 else 0 end) as 'montenegro'
FROM subject, activity
WHERE subject.bib = activity.bib and year(activity.o) >= 2006 and year(activity.o) <= 2012
GROUP BY year(activity.o);
Query Explanation
The query above has been shortened for brevity, since it is nearly 240 lines long. Each country needs to be specified individually, and assigned to it's own column. The rows span the years from 2006 to 20012, and show a value indicating the frequency of occurrence of each country in book subjects. This query runs in approximately 16 hours on the newer spl1 database. It's not very complicated, but does perform a large amount of work and counting.
Process
With the latitude and longitude of every country in hand, it was simply a matter of performing two rotations around the 3D globe to position the frequency bars of each country in the correct place. I colored these bars according to continent, and placed labels on the ends to display the country name in a way that minimized overlap.
A tricky problem I had to solve was how half the text labels on the screen were essentially backwards due to the curve of the globe surface. I had to make some calculations based on the location of the camera and flip the text labels at the appropriate time so that they were always facing the user.
Results and Analysis
After gathering all the data and visualizing it, I quickly found out some interesting facts. Firstly, the US is the most popular country by far in the SPL database based on book subject. It actually skews the size of many other country bars to be 0 length, so I needed to cap the maximum for a better overall presentation.
It's interesting to explore the globe, adjusting the year with the left and right arrow keys, and see significant grow and decline across countries - typically those with heavy news coverage in the observed time range.
To visualize this change between years, I included an alternate view of the data. Pressing the 1 key toggles the difference mode, where positive change is visible as green bars, and negative change is red; the more drastic the change, the stronger the intensity of the color.
Controls
1: Toggle normal view (colored by continent) / difference view
2: Show/hide country labels
For this project, I was interested in visualizing the frequency of occurrence of country names in the subject of books over time. I thought that perhaps the many world events of the past few years may be discernible in the data fluctuations of book checkouts. And, since this project was in 3D, I thought why not visualize something geographical like this on an actual globe. The result is a sphere-based 3D bar graph showing popularity over time of all the major countries around the world based on book checkouts.
Before I could pursue this idea I needed to make sure there was a way of determining the latitude and longitude of every country. Luckily, this information is publicly available on several websites in the form of a CSV, organized by country code (a universal two character sequence unique to each country). Since some countries have special characters or symbols in their title, it was important to sanitize all strings before performing SQL queries, and use the country code wherever possible.
Query
SELECT
sum(case when (subject = 'andorra' or subject like 'andorra %' or subject like '% andorra' or subject like '% andorra %') then 1 else 0 end) as 'andorra',
sum(case when (subject = 'united arab emirates' or subject like 'united arab emirates %' or subject like '% united arab emirates' or subject like '% united arab emirates %') then 1 else 0 end) as 'united arab emirates',
...
sum(case when (subject = 'south africa' or subject like 'south africa %' or subject like '% south africa' or subject like '% south africa %') then 1 else 0 end) as 'south africa',
sum(case when (subject = 'zambia' or subject like 'zambia %' or subject like '% zambia' or subject like '% zambia %') then 1 else 0 end) as 'zambia',
sum(case when (subject = 'montenegro' or subject like 'montenegro %' or subject like '% montenegro' or subject like '% montenegro %') then 1 else 0 end) as 'montenegro'
FROM subject, activity
WHERE subject.bib = activity.bib and year(activity.o) >= 2006 and year(activity.o) <= 2012
GROUP BY year(activity.o);
Query Explanation
The query above has been shortened for brevity, since it is nearly 240 lines long. Each country needs to be specified individually, and assigned to it's own column. The rows span the years from 2006 to 20012, and show a value indicating the frequency of occurrence of each country in book subjects. This query runs in approximately 16 hours on the newer spl1 database. It's not very complicated, but does perform a large amount of work and counting.
Process
With the latitude and longitude of every country in hand, it was simply a matter of performing two rotations around the 3D globe to position the frequency bars of each country in the correct place. I colored these bars according to continent, and placed labels on the ends to display the country name in a way that minimized overlap.
A tricky problem I had to solve was how half the text labels on the screen were essentially backwards due to the curve of the globe surface. I had to make some calculations based on the location of the camera and flip the text labels at the appropriate time so that they were always facing the user.
Results and Analysis
After gathering all the data and visualizing it, I quickly found out some interesting facts. Firstly, the US is the most popular country by far in the SPL database based on book subject. It actually skews the size of many other country bars to be 0 length, so I needed to cap the maximum for a better overall presentation.
It's interesting to explore the globe, adjusting the year with the left and right arrow keys, and see significant grow and decline across countries - typically those with heavy news coverage in the observed time range.
To visualize this change between years, I included an alternate view of the data. Pressing the 1 key toggles the difference mode, where positive change is visible as green bars, and negative change is red; the more drastic the change, the stronger the intensity of the color.
Controls
1: Toggle normal view (colored by continent) / difference view
2: Show/hide country labels
- Attachments
-
- saeed_pj5.zip
- Code
- (64.32 KiB) Downloaded 255 times
Last edited by saeedm on Tue Mar 26, 2013 6:29 pm, edited 3 times in total.
-
- Posts: 5
- Joined: Tue Jan 22, 2013 4:49 pm
Re: Proj 5 - 3D Spatial Interactive
Attached is my final project.
(the doodle was regrettably lost)
I wanted to extend my 2d comparative visualization, so I started by converting from averaging the 2 sets to defining the rectangle which bounds the two sets, then plotting those along the z axis. This qudrangle view I hoped would make the data presented in my first comperative 2d visulization more clear and easy to follow.
https://docs.google.com/file/d/0B7PkP8N ... sp=sharing
images:
https://docs.google.com/file/d/0B7PkP8N ... sp=sharing
(the doodle was regrettably lost)
I wanted to extend my 2d comparative visualization, so I started by converting from averaging the 2 sets to defining the rectangle which bounds the two sets, then plotting those along the z axis. This qudrangle view I hoped would make the data presented in my first comperative 2d visulization more clear and easy to follow.
https://docs.google.com/file/d/0B7PkP8N ... sp=sharing
images:
https://docs.google.com/file/d/0B7PkP8N ... sp=sharing