Google Bubble Chart with R
The gvisBubbleChart 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.
gvisBubbleChart( data, idvar = "", xvar = "", yvar = "", colorvar = "", sizevar = "", options = list(), chartid )
data |
a |
idvar |
column name of |
xvar |
column name of a numerical vector in |
yvar |
column name of a numerical vector in |
colorvar |
column name of data that identifies bubbles in the same
series. Use the same value to identify all bubbles that belong to the same
series; bubbles in the same series will be assigned the same color. Series
can be configured using the |
sizevar |
values in this column are mapped to actual pixel values using
the |
options |
list of configuration options, see: https://developers.google.com/chart/interactive/docs/gallery/bubblechart#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 bubble chart is used to visualize a data set with 2 to 4 dimensions. The first two dimensions are visualized as coordinates, the 3rd as color and the 4th as size.
The bubble chart is rendered within the browser using SVG or VML and displays tips when hovering over points.
gvisBubbleChart 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/bubblechart
See also gvisMotionChart
for a moving bubble chart
over time, and print.gvis
, plot.gvis
for
printing and plotting methods.
bubble1 <- gvisBubbleChart(Fruits, idvar="Fruit", xvar="Sales", yvar="Expenses") plot(bubble1) ## Set color and size bubble2 <- gvisBubbleChart(Fruits, idvar="Fruit", xvar="Sales", yvar="Expenses", colorvar="Location", sizevar="Profit", options=list(hAxis='{minValue:75, maxValue:125}')) plot(bubble2) ## Use year to color the bubbles bubble3 <- gvisBubbleChart(Fruits, idvar="Fruit", xvar="Sales", yvar="Expenses", colorvar="Year", sizevar="Profit", options=list(hAxis='{minValue:75, maxValue:125}')) plot(bubble3) ## Gradient colour example bubble4 <- gvisBubbleChart(Fruits, idvar="Fruit", xvar="Sales", yvar="Expenses", sizevar="Profit", options=list(hAxis='{minValue:75, maxValue:125}', colorAxis="{colors: ['lightblue', 'blue']}")) plot(bubble4) ## Not run: ## Moving bubble chart over time, aka motion chart M <- gvisMotionChart(Fruits, Fruit, Year) plot(M) ## End(Not run)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.