You are on page 1of 7

GEOSPATIAL VISUALIZATION OF STUDENT POPULATION

USING GOOGLE™ MAPS*

Hrvoje Podnar, Adam Gschwender, Robert Workman, Jian Chan


Computer Science Department
Southern Connecticut State University
New Haven, CT, 06515
(203) 392-5815
podnarh1@southernct.edu

ABSTRACT
We present an application that delivers a visual geospatial overview of our
student population location. Developed by our students, the application
showed benefits behind the classroom environment. The presentation includes
the application development details, the practical implications of the
application, together with the positive impact the student projects of this nature
have on our computer science program.

1. INTRODUCTION
Launching of Google™ Maps (beta: February 2005; alpha: October 2005) started
a new era of embedding geospatial information within web sites. As a Web Map Server,
Google™ Maps delivers easy-to-use mapping service with drag-and-drop and
zoom-in-out functionality (Wikipedia 2005). Users interested in embedding such on-line
content are provided with JavaScript classes, also known as Google™ Maps API, that can
be readily called from users’ web pages. Through the Maps API, users can request maps
of their interest from the Map Server, and add additional content to the retrieved maps as
they see fit.
Given the JavaScript programming environment and well documented class
definitions, the Google™ Maps API can be easily adopted by any Internet Programming
class that focuses on client-side (browser) programming. The API is also suitable for a
more complex Internet Programming classes that introduce students to server-side

___________________________________________
*
Copyright © 2006 by the Consortium for Computing Sciences in Colleges. Permission to copy
without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the CCSC copyright notice and the title of the
publication and its date appear, and notice is given that copying is by permission of the
Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a
fee and/or specific permission.

175
JCSC 21, 6 (June 2006)

programming, and even further, to the distributed programming classes that require
various types of connectivity such as calls to databases. As a visual tool, Google™ Maps
API can be used in database and data mining classes where visual representation of
geospatial information is crucial for the data interpretation.
Our presentation proceeds with the description of a project announced to students
in our Internet Programming classes. The project attracted our best students and was
planned to be completely student driven with faculty members interacting and providing
information only when needed.

2. PROJECT DESCRIPTION
The main focus of the project was to provide visual information about geospatial
distribution of student population in our Masters program.
The decision was made to limit our data set to our graduate students for a number
of reasons including: a) the population is smaller than the undergraduate one; b) the
graduate students have well-defined major; and c) the geospatial data is collected on two
levels: by the registrar and our graduate school.
In the first phase, only ZIP codes will be used to describe students’ locations. This
will simplify the data translation process from the original data (a ZIP code) to the
(longitude, latitude) pair required by the Google™ Maps. This feature will also assure
data privacy.
The project’s main steps are as follows:
• Data Collection: students’ ZIP codes, translation table from ZIP codes to (longitude,
latitude) pairs
• Database Creation and Loading: creating and populating the necessary tables
• Development of a PHP Script for XML document creation: that will contain markers
(<marker>) for the collected ZIP codes.
• Development of a PHP Script for the map visual display.

3. PREVIOUS WORK
There are multiple examples of applications developed especially for visual display
of students’ populations, but we will include only a couple.
In their iSPOTS project, the researchers from the MIT’s SENSEable City lab
developed a real-time application that computes the traces of individuals passing through
the MIT campus and using their wireless access points. Additional scientific
visualizations of the spatial and network utilizations were developed (MIT SENSEable
2005).
Central Michigan University developed a GIS application to track a multitude of
geospatial data and display it using ESRI’s ArcView. Some of the created maps depicted
the number of graduate students per county, percentages of specific majors per each
county, and the number of undergraduate students from the State of Michigan (GEO
World 2001).

176
CCSC:Northeastern Conference

4. METHODOLOGY
Our students used Google™ Maps API that provides a set of JavaScript modules to
be embedded in third party web pages. The modules were specifically developed to
simplify the process of communicating with a Google Web Map Server.
In order to store local data such as ZIP codes with their frequencies and the
translation table between ZIP codes and (longitude, latitude) pairs, the students were
granted access to our school’s mySQL server. They used phpMyAdmin script application
to perform administrative tasks within the database.
Finally the students developed a suite of PHP scripts in order to populate the
database, create an intermediate XML markers document, and finally display the maps
with the positioned markers.
The conceptual design of the system can be viewed in Figure 1.

Figure 1. Conceptual System Design

4.1 Data Collection and Database Population


The ZIP codes with their corresponding latitudes and longitudes were downloaded
from the Census Bureau home page http://www.census.gov. New mySQL table is
generated (zip_location) and populated with the downloaded data. The population
is automated and performed by running a PHP script.
The graduate students’ ZIP codes were extracted from the university database and
stored into a file. The data is summarized and the number of students from a specific ZIP
code was recorded. The ZIP codes frequencies were entered into the database by running
another PHP script. The new table (grad_zip) will be used to determine the color
coding of the visual ZIP code representation. The two tables are depicted in Figure 2.
4.2 XML Document Generation
In order to use Google™ Maps API, the students needed to generate an XML file
that will hold markers. Our XML file might have the following markers:
<markers>
<marker lng=”-72.5608” lat=”41.8367” num_students=”4”
payload=”4 students from 06074” icon=”marker-red.png”>
</markers>

177
JCSC 21, 6 (June 2006)

Figure 2. The project’s mySQL tables

This marker will be displayed at the specific longitude and latitude by a red pin png
image. The XML generation is done by the PHP script outlined in Figure 3.

Figure 3. XML generator written in PHP

4.3 Visual Representation of the Data


The final display is done by a PHP script that will use Google™ Maps API. To
include this API JavaScript functionality one needs to include the following script in our
document:
<script
src="http://maps.google.com/maps?file=api&v=1&key=..."
type="text/javascript"></script>

178
CCSC:Northeastern Conference

where ... denotes the key received from Google after free registration. We are now ready
to use GMap, GIcon and GMarker objects. For more detailed description please refer to
(Google 2005).

4.4 Example
Based on our school’s data the final display is shown in Figure 4. The pins are
placed at the corresponding ZIP codes, and are color coded. The color describes the
number of students within the corresponding ZIP code. The colors are determined based
on the following table:

red orange yellow green blue purple


only 1 1< <=5 5< <=10 10< <=20 20< <=50 51<
The map can now be zoomed in and out, revealing more details about where the students
are coming from. If one is to click on a pin, the exact number of students from the
corresponding pin will be displayed.

Figure 4. Visual Representation of our student population

This specific example was developed by a team of only two undergraduate students in
their sophomore year of studies. The students received credit as a special project within
a 200-level internet programming class. One member of the team focused his efforts only
to data manipulation: data collection and automatic database population. The second
member of the team worked on the XML generation and visualization parts. Faculty
member responsibilities included: setting up the necessary server access accounts, and
overseeing weekly team meetings. At the end of the semester, both faculty and students
rated the project as highly positive learning experience.

179
JCSC 21, 6 (June 2006)

5. BENEFITS TO THE CURRICULA


5.1 Introductory Internet Programming
Given the ease of using Google™ Maps API as a JavaScript extension, similar
assignment can be given to a class with only introductory knowledge of JavaScript.

5.2 Advanced Internet Programming


Advanced internet programming classes will require students to use server side
scripts for populating a map. Additional connectivity to a database can be required.

5.3 Data Mining


Scientific visualization is beneficial in interpreting data with no established patterns.
Visual overview of the data is valuable tool in pattern discovery.

5.4 Other Courses


The map could be used in discussions about student diversity. It can also be used in
classes with regional focus (local history). It is certainly useful in classes where team
effort is essential, where it can be used in team formations.

6. BENEFITS TO THE DEPARTMENT


6.1 New Student Recruiting
The mapping tool can provide information about the geographical areas where
majority of our students are coming from. The decision maker can overview the map and
decide to proceed with an ad campaign and /or outreach activities in promising areas.

7. FUTURE WORK
The data used in this project can be augmented by generating maps focusing on
different majors, SAT (GRE) scores, ethnicity and age. Instead of ZIP codes one could
focus on the specific high-schools/colleges where our students are originating from. The
student population granularity can be increased to reflect the seniority. The transfer
student population distribution together with their incoming GPA can provide information
about strengths of local community colleges.

8. REFERENCES
GEO World (2001) GIS in Education: Students Mapping Students. Retrieved on
November 20th 2005, from http://www.geoplace.com/gw/2001/0101/0101edu.asp.
Google (2005) Google™ Maps API. Retrieved on November 20th 2005, from
http://www.google.com/apis/maps/.

180
CCSC:Northeastern Conference

MIT SENSEable City Lab (2005) iSPOTS project. Retrieved on November 20th 2005,
from http://ispots.mit.edu/.
Wikipedia (2005) Google™ Maps. Retrieved on November 20th, 2005 from
http://en.wikipedia.org/wiki/Google_maps.

181