A Brief Intro To GIS (Geographical Information Systems)
Back in the late 80s, when I first started working with GIS (Geographical Information Systems), there was no public Internet. In fact, when I last officially stopped working with GIS, there was no public Internet. Over the past few years, however, my interest in GIS has been renewed due to all the great OpenSource GIS packages that are available. Sorry, but I don't 5, 10 or 50 thousand for a "professional" commercial package. What's more, standard-format digital maps are now available for easy download, even for free from government web sites. This beats those days when I had to hand-digitize the entire Greater Toronto Area (Canada) of about 32 municipalties using a very large map. Then I had to hunt down the mathematics behind map projections for the Earth, give up and derive the math formulas myself, write my own plotting software, wake up before I went to sleep, and chew rocks for breakfast :) (Apologies to the Monty Python's Flying Circus Crew.) Times sure have changed.
But I digress. The value of GIS is many-fold, but I like it for general demographics: geographical analysis of human data such as spending trends, etc. I particularly like to use it analyze where website and blogsite visitors are coming from, then produce graphs, charts and even map-based animations of visitors. To do this requires the ability to convert each visitor's IP address into a standard country code, or even into their city of residence. For the purposes of discussion, this article focuses on countries, not cities.
Once a visitor's country has been determined, the location of the country is required. Depending on your data source, the latitude and longitude for the country is either the average of the entire country or the average of its capital city. Each visitor is indicated on a map (usually of the world) with an icon, possibly a dot, start, or pushpin. Clicking on an icon pops up a dialog with the date, time, and location of that visitor. The collection of information for each visitor is known as a data point, and for Google Maps is represented in XML format. We are not currently concerned with map "features" such as rivers or roads.
As I mentioned in a recent BlogSpinner post, I hope to set up a free service that expands upon the very cool gVisit by showing historical metrics about each visitor, on demand. Since much of the forthcoming dicussion will be posted across this and some of my other blogs (Perl-Tips, PHP-Tips, MySQL-Tips), watch my currently-changing right sidebar for the appropriate hyperlinks.
Just a final note: Any discussions and code I present on this topic will use the popular Google Maps. I'm not ignoring Microsoft or Yahoo or anyone else for any reason other than that I came across Google first, and I don't have time to develop for three different, non-standard mapsites. My postings should be relatively clear enought that you can extrapolate to other Map services. Now if someone got these three companies together and standardized an XML-SOAP interface for plotting data points on a web-based map, they would have my undying gratitude.
(c) Copyright 2005-present, Raj Kumar Dash, http://geoplotting.blogspot.com
But I digress. The value of GIS is many-fold, but I like it for general demographics: geographical analysis of human data such as spending trends, etc. I particularly like to use it analyze where website and blogsite visitors are coming from, then produce graphs, charts and even map-based animations of visitors. To do this requires the ability to convert each visitor's IP address into a standard country code, or even into their city of residence. For the purposes of discussion, this article focuses on countries, not cities.
Once a visitor's country has been determined, the location of the country is required. Depending on your data source, the latitude and longitude for the country is either the average of the entire country or the average of its capital city. Each visitor is indicated on a map (usually of the world) with an icon, possibly a dot, start, or pushpin. Clicking on an icon pops up a dialog with the date, time, and location of that visitor. The collection of information for each visitor is known as a data point, and for Google Maps is represented in XML format. We are not currently concerned with map "features" such as rivers or roads.
As I mentioned in a recent BlogSpinner post, I hope to set up a free service that expands upon the very cool gVisit by showing historical metrics about each visitor, on demand. Since much of the forthcoming dicussion will be posted across this and some of my other blogs (Perl-Tips, PHP-Tips, MySQL-Tips), watch my currently-changing right sidebar for the appropriate hyperlinks.
Just a final note: Any discussions and code I present on this topic will use the popular Google Maps. I'm not ignoring Microsoft or Yahoo or anyone else for any reason other than that I came across Google first, and I don't have time to develop for three different, non-standard mapsites. My postings should be relatively clear enought that you can extrapolate to other Map services. Now if someone got these three companies together and standardized an XML-SOAP interface for plotting data points on a web-based map, they would have my undying gratitude.
(c) Copyright 2005-present, Raj Kumar Dash, http://geoplotting.blogspot.com