Google Geo Chart with R
The gvisGeoChart 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.
gvisGeoChart( data, locationvar = "", colorvar = "", sizevar = "", hovervar = "", options = list(), chartid )
data |
a |
locationvar |
column name of
|
colorvar |
column name of |
sizevar |
only used for |
hovervar |
column name of |
options |
list of configuration options, see: https://developers.google.com/chart/interactive/docs/gallery/geochart#Configuration_Options The parameters can be set via a named list. The parameters have to map those of the Google documentation.
For more details see the Google API documentation and the R examples below. |
chartid |
character. If missing (default) a random chart id will be
generated based on chart type and |
A geo chart is a map of a country, a continent, or a region with two modes: The region mode colorizes whole regions, such as countries, provinces, or states. The marker mode marks designated regions using bubbles that are scaled according to a value that you specify.
A geo chart is rendered within the browser using SVG or VML. Note that the map is not scrollable or draggable.
gvisGeoChart returns list
of class
"gvis
" and "list
".
An object of class "gvis
" is a list containing at least the
following components:
type
Google visualisation type
chartid
character id of the chart object. Unique chart ids are required to place several charts on the same page.
html
a list with the building blocks for a page
header
a character string of a html page header:
<html>...<body>
,
chart
a named character vector of the chart's building blocks:
jsHeader
Opening <script>
tag and
reference to Google's JavaScript library.
jsData
JavaScript function defining the input
data
as a JSON object.
jsDrawChart
JavaScript function combing the data with the visualisation API and user options.
jsDisplayChart
JavaScript function calling the handler to display the chart.
jsFooter
End tag </script>
.
jsChart
Call of the jsDisplayChart
function.
divChart
<div>
container to embed the chart
into the page.
caption
character string of a standard caption, including data name and chart id.
footer
character string of a html page footer:
</body>...</html>
, including the used R and googleVis version
and link to Google's Terms of Use.
Markus Gesmann markus.gesmann@gmail.com, Diego de Castillo decastillo@gmail.com
Google Chart Tools API: https://developers.google.com/chart/interactive/docs/gallery/geochart
See also print.gvis
, plot.gvis
for printing and plotting methods.
## Please note that by default the googleVis plot command ## will open a browser window and requires Internet ## connection to display the visualisation. ## Regions examples ## The regions style fills entire regions (typically countries) with ## colors corresponding to the values that you assign G1a <- gvisGeoChart(Exports, locationvar='Country', colorvar='Profit') plot(G1a) ## Change projection G1b <- gvisGeoChart(Exports, locationvar='Country', colorvar='Profit', options=list(projection="kavrayskiy-vii")) plot(G1b) ## Plot only Europe G2 <- gvisGeoChart(Exports, "Country", "Profit", options=list(region="150")) plot(G2) ## Example showing US data by state require(datasets) states <- data.frame(state.name, state.x77) G3 <- gvisGeoChart(states, "state.name", "Illiteracy", options=list(region="US", displayMode="regions", resolution="provinces", width=600, height=400)) plot(G3) G4 <- gvisGeoChart(Andrew, "LatLong", colorvar='Speed_kt', options=list(region="US")) plot(G4) G5 <- gvisGeoChart(Andrew, "LatLong", sizevar='Speed_kt', colorvar="Pressure_mb", options=list(region="US")) plot(G5) ## Create lat:long values and plot a map of Oceania ## Set background colour to light-blue require(stats) data(quakes) head(quakes) quakes$latlong<-paste(quakes$lat, quakes$long, sep=":") G6 <- gvisGeoChart(quakes, "latlong", "depth", "mag", options=list(displayMode="Markers", region="009", colorAxis="{colors:['red', 'grey']}", backgroundColor="lightblue")) plot(G6)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.