Simple Example of a Bubble Chart
Try out using GoogleVis. The plot may need to be openned in Chrome, I have had problems seeing the result in Firefox.
library(googleVis)
# demo(googleVis)
data(Fruits)
Fruits
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)
The Motion Chart does not work locally now.
M1 <- gvisMotionChart(Fruits, idvar="Fruit", timevar="Year")
plot(M1)
Use the Gapmider Data to make the Bubble Chart using GoogleVis.
Look at the Gapmider World website to see what the x-axis, y-axis,
(x-axis = gdp, y-axis = lifeExp, color = continent, size = pop)
library(gapminder)
data("gapminder_unfiltered")
gapminder_unfiltered
Line <- gvisBubbleChart(gapminder_unfiltered, xvar="gdpPercap", yvar="lifeExp", idvar="continent")
plot(Line)
The Motion Chart does not work locally now.
M2 <- gvisMotionChart(gapminder_unfiltered, idvar="country", timevar="year")
plot(M2)
LS0tDQp0aXRsZTogIkdvb2dsZVZpcyINCm91dHB1dDogaHRtbF9ub3RlYm9vaw0KLS0tDQoNCiMgU2ltcGxlIEV4YW1wbGUgb2YgYSBCdWJibGUgQ2hhcnQNCg0KVHJ5IG91dCB1c2luZyBHb29nbGVWaXMuICBUaGUgcGxvdCBtYXkgbmVlZCB0byBiZSBvcGVubmVkIGluIENocm9tZSwgSSBoYXZlIGhhZCBwcm9ibGVtcyBzZWVpbmcgdGhlIHJlc3VsdCBpbiBGaXJlZm94Lg0KDQpgYGB7cn0NCmxpYnJhcnkoZ29vZ2xlVmlzKQ0KIyBkZW1vKGdvb2dsZVZpcykNCmBgYA0KDQpgYGB7cn0NCmRhdGEoRnJ1aXRzKQ0KRnJ1aXRzDQpgYGANCg0KYGBge3J9DQpidWJibGUxIDwtIGd2aXNCdWJibGVDaGFydChGcnVpdHMsIGlkdmFyPSJGcnVpdCIsIHh2YXI9IlNhbGVzIiwgeXZhcj0iRXhwZW5zZXMiKQ0KcGxvdChidWJibGUxKQ0KDQojIyBTZXQgY29sb3IgYW5kIHNpemUNCmJ1YmJsZTIgPC0gZ3Zpc0J1YmJsZUNoYXJ0KEZydWl0cywgaWR2YXI9IkZydWl0IiwgeHZhcj0iU2FsZXMiLCB5dmFyPSJFeHBlbnNlcyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9ydmFyPSJMb2NhdGlvbiIsIHNpemV2YXI9IlByb2ZpdCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM9bGlzdChoQXhpcz0ne21pblZhbHVlOjc1LCBtYXhWYWx1ZToxMjV9JykpDQoNCnBsb3QoYnViYmxlMikNCg0KIyMgVXNlIHllYXIgdG8gY29sb3IgdGhlIGJ1YmJsZXMNCmJ1YmJsZTMgPC0gZ3Zpc0J1YmJsZUNoYXJ0KEZydWl0cywgaWR2YXI9IkZydWl0IiwgeHZhcj0iU2FsZXMiLCB5dmFyPSJFeHBlbnNlcyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcnZhcj0iWWVhciIsIHNpemV2YXI9IlByb2ZpdCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zPWxpc3QoaEF4aXM9J3ttaW5WYWx1ZTo3NSwgbWF4VmFsdWU6MTI1fScpKQ0KcGxvdChidWJibGUzKQ0KDQojIyBHcmFkaWVudCBjb2xvdXIgZXhhbXBsZQ0KYnViYmxlNCA8LSBndmlzQnViYmxlQ2hhcnQoRnJ1aXRzLCBpZHZhcj0iRnJ1aXQiLCB4dmFyPSJTYWxlcyIsIHl2YXI9IkV4cGVuc2VzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZXZhcj0iUHJvZml0IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucz1saXN0KGhBeGlzPSd7bWluVmFsdWU6NzUsICBtYXhWYWx1ZToxMjV9JywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvckF4aXM9Intjb2xvcnM6IFsnbGlnaHRibHVlJywgJ2JsdWUnXX0iKSkNCnBsb3QoYnViYmxlNCkNCg0KYGBgDQoNClRoZSBNb3Rpb24gQ2hhcnQgZG9lcyBub3Qgd29yayBsb2NhbGx5IG5vdy4NCg0KYGBge3J9DQpNMSA8LSBndmlzTW90aW9uQ2hhcnQoRnJ1aXRzLCBpZHZhcj0iRnJ1aXQiLCB0aW1ldmFyPSJZZWFyIikNCg0KcGxvdChNMSkNCmBgYA0KDQojIFVzZSB0aGUgR2FwbWlkZXIgRGF0YSB0byBtYWtlIHRoZSBCdWJibGUgQ2hhcnQgdXNpbmcgR29vZ2xlVmlzLg0KDQpMb29rIGF0IHRoZSBbR2FwbWlkZXIgV29ybGRdKGh0dHA6Ly93d3cuZ2FwbWluZGVyLm9yZy93b3JsZC8pIHdlYnNpdGUgdG8gc2VlIHdoYXQgdGhlIHgtYXhpcywgeS1heGlzLCANCg0KKHgtYXhpcyA9IGdkcCwgeS1heGlzID0gbGlmZUV4cCwgY29sb3IgPSBjb250aW5lbnQsIHNpemUgPSBwb3ApDQoNCmBgYHtyfQ0KbGlicmFyeShnYXBtaW5kZXIpDQoNCmRhdGEoImdhcG1pbmRlcl91bmZpbHRlcmVkIikNCg0KZ2FwbWluZGVyX3VuZmlsdGVyZWQNCmBgYA0KDQoNCmBgYHtyfQ0KTGluZSA8LSBndmlzQnViYmxlQ2hhcnQoZ2FwbWluZGVyX3VuZmlsdGVyZWQsIHh2YXI9ImdkcFBlcmNhcCIsIHl2YXI9ImxpZmVFeHAiLCBpZHZhcj0iY29udGluZW50IikNCnBsb3QoTGluZSkNCmBgYA0KDQoNClRoZSBNb3Rpb24gQ2hhcnQgZG9lcyBub3Qgd29yayBsb2NhbGx5IG5vdy4NCg0KYGBge3J9DQpNMiA8LSBndmlzTW90aW9uQ2hhcnQoZ2FwbWluZGVyX3VuZmlsdGVyZWQsIGlkdmFyPSJjb3VudHJ5IiwgdGltZXZhcj0ieWVhciIpDQoNCnBsb3QoTTIpDQpgYGANCg0K