Learn R Programming

googleVis (version 0.4.4)

gvisGeoMap: Google Geo Map with R

Description

The gvisGeoMap function reads a data.frame and creates text output referring to the Google Visualisation API, which can be included into a web page, or as a stand-alone page. A geo map is a map of a country, continent, or region map, with colours and values assigned to specific regions. Values are displayed as a colour scale, and you can specify optional hover-text for regions. The map is rendered in the browser. Note that the map is not scroll-able or drag-gable, but can be configured to allow zooming.

Usage

gvisGeoMap(data, locationvar='', numvar='', hovervar='',
           options = list(), chartid)

Arguments

data
a data.frame. The data has to have at least two columns with location name (locationvar), value to be mapped to location (numvar) and an optional variable to display any text while the mouse hovers over t
locationvar
column name of data with the geo locations to be analysed. The locations can be provide in two formats: [object Object],[object Object]
numvar
column name of data with the numeric value displayed when the user hovers over this region.
hovervar
column name of data with the additional string text displayed when the user hovers over this region.
options
list of configuration options for Google Geo Map. [object Object] Further possible components are, taken from https://google-developers.appspot.com/chart/interactive/docs/gallery/geomap.html#Configuration_Options: [object Object
chartid
character. If missing (default) a random chart id will be generated based on chart type and tempfile

Value

  • gvisGeoMap returns list of class "gvis" and "list". An object of class "gvis" is a list containing at least the following components:
  • typeGoogle visualisation type, here 'GeoMap'
  • chartidcharacter id of the chart object. Unique chart ids are required to place several charts on the same page.
  • htmla list with the building blocks for a page [object Object],[object Object],[object Object],[object Object]

Warnings

Because of Flash security settings the chart might not work correctly when accessed from a file location in the browser (e.g., file:///c:/webhost/myhost/myviz.html) rather than from a web server URL (e.g. http://www.myhost.com/myviz.html). See the googleVis package vignette and the Macromedia web site (http://www.macromedia.com/support/documentation/en/flashplayer/help/) for more details.

References

Google Geo Map API: https://google-developers.appspot.com/chart/interactive/docs/gallery/geomap.html

Follow the link for Google's data policy.

See Also

See also print.gvis, plot.gvis for printing and plotting methods, gvisGeoChart and gvisIntensityMap for an alternative to gvisGeoMap.

Examples

Run this code
## Please note that by default the googleVis plot command
## will open a browser window and requires Internet
## connection to display the visualisation.

## Regions Example
## The regions style fills entire regions (typically countries) with colors
## corresponding to the values that you assign. Specify the regions style
## by assigning options['dataMode'] = 'regions' in your code.

G1 <- gvisGeoMap(Exports, locationvar='Country', numvar='Profit',
                 options=list(dataMode="regions")) 

plot(G1)

## Markers Example
## The "markers" style displays a circle, sized and colored to indicate
## a value, over the regions that you specify. 

G2 <- gvisGeoMap(CityPopularity, locationvar='City', numvar='Popularity',
                 options=list(region='US', height=350, 
                              dataMode='markers',
                              colors='[0xFF8747, 0xFFB581, 0xc06000]'))	

plot(G2) 

## Example showing US data by state 

require(datasets)
states <- data.frame(state.name, state.x77)

G3 <- gvisGeoMap(states, "state.name", "Illiteracy",
                 options=list(region="US", dataMode="regions",
		 width=600, height=400))
plot(G3) 

## Example with latitude and longitude information
## Show Hurricane Andrew (1992) storm track
G4 <- gvisGeoMap(Andrew, locationvar="LatLong", numvar="Speed_kt", 
      			 hovervar="Category", 
      		         options=list(height=350, region="US", dataMode="markers"))

plot(G4) 

## World population
WorldPopulation=data.frame(Country=Population$Country, 
			   Population.in.millions=round(Population$Population/1e6,0),
			   Rank=paste(Population$Country, "Rank:", Population$Rank))

G5 <- gvisGeoMap(WorldPopulation, "Country", "Population.in.millions", "Rank", 
      		      options=list(dataMode="regions", width=600, height=300))
plot(G5)

## The demo 'AnimatedGeoMap' shows how a Geo Map can be animated
## with additional JavaScript. 
## Thanks to Manoj Ananthapadmanabhan and Anand Ramalingam, who
## provided the idea and initial code.
## Please note: This demo requires the package 'pscl' for its data set
## 'presidentalElections'.

demo(AnimatedGeoMap)

Run the code above in your browser using DataLab