In this project, we created various visualizations and ran some in-depth analysis on multiple data sets from active research projects. We analyzed the Bird Arrivals Data, Eye Tracking Data and the Australia Coast Climate Data.
Firstly, we implemented a function that allowed the user to filter data based on any specific data column, whether numeric or non-numeric. Also we gave the user the ability to choose numeric and date values between a given range and plot the filtered data. The filtered data was also plotted using headers that were provided as drop-down menus for the user. The user could then choose to plot the filtered data in either 2D or 3D. We did this by creating a button in the root window that created a dialog box that had all of the options the user needed. Therefore, with this visualization, the user is able to a more unique part of the data and even see some patterns emerging.
The above screen shot shows a filtered data set of the Bird Arrivals data filtered by Species and DOY. The species selected was the Pine Warbler and the DOY values are from 100 to 150. We plot DOY vs Year on this graph.
Secondly, we implemented a multiple histogram method that plotted multiple histograms of data based on the values given by the user. The user has a filter option menu where they can choose the data they want to filter with, 5 entry boxes where they can add values to be filtered and a histogram drop-down menu that plots a certain numeric value in the histogram. The user has the ability to choose to either see the histograms overlaid over one another or in separate windows.To do this, we created a button in the root window, that created a dialog box when clicked. In the bow, all of the options are provided. With this visualization, the user is able to compare data of different characteristics within the same dataset.
The image above is multiple histograms for 5 species of birds overlaid on one another.
Thirdly, we added a functionality to our addAxes method of the last project that lets the user add an additional axis that would be represented by the size of the data point. The user has to select an additional axes from a drop-down menu that is shown through a color gradient from blue to yellow and the a next drop-down menu for an additional axes that was represented by size. To do this, we just had to create an additional optionMenu object, get the value of axes to be added and consequently modified the shapes in the canvas to get the correct adjustment. With this visualization, the user is able to visualize data with an additional sense of what is happening within the dataset.
The above image is a demonstration of our add Axes method on the Australia Coast Climate Data. We first plot longitude and latitude on the x and y-axis. Then we add a third dimension of color, Wave_height and a fourth dimension of size evapproxy.
Finally, for the Bird Arrivals Data, we calculated the mean and standard deviation of the DOY for each bird, created a data set where each data point was the name of the bird, its mean DOY, and the standard deviation of its DOY. We then created a 2D plot of all the bird species using the mean and standard deviation values as the axes. Additionally, we implemented a method that allowed the user to see the name of the bird as they moved their mouse over a data point. We did this by first binding the motion of the mouse to a function that looped through the shapes on the canvas, checked to see if the position of the mouse on the canvas was close to any of the data points and created the text at the position of the the closest data point. This visualization was helpful because the user is now able to discriminate DOY values based on species, year and Region.
The above image is a plot of the Standard Deviation of the DOY vs the Mean of the DOY. We can also see that as the mouse pointer moves over a point, we can see the specie of the Bird and in this case, the specie is Gadwall
For our Extension, we implemented a method that plotted the mean arrival time in one region versus the mean arrival time in a second region across all birds. We also did this for three regions. To do this, we created a button on the root window that produced a dialog box where we could choose the regions that we wanted to see, and then plot the arrival times for each individual bird on the two or three axes representing the individual regions. This visualization was useful because we were able to compare the arrival times of various birds in various regions and see which birds arrived early and later corresponding to the regions selected.
The above image shows the Mean Arrival Dates for birds in Regions One, Ten and Fourteen.