index.html
<!doctype HTML>
<meta charset = 'utf-8'>
<html>
<head>
<link rel='stylesheet' href="//netdna.bootstrapcdn.com/bootswatch/2.3.1/cosmo/bootstrap.min.css">
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/css/bootstrap-responsive.min.css" >
<link rel='stylesheet' href="//getbootstrap.com/2.3.2/assets/js/google-code-prettify/prettify.css">
<link rel='stylesheet' href="//aozora.github.io/bootplus/assets/css/docs.css">
<script src='//d3js.org/d3.v3.min.js' type='text/javascript'></script>
<script src='//timelyportfolio.github.io/rChartsExtra/d3pie/js/d3pie.js' type='text/javascript'></script>
<style>
.rChart {
display: block
margin: auto auto;
width: 100%;
height: 500px;
}
</style>
</head>
<body>
<div class='container'>
<div class='row'>
<div class='span8'>
<div class="bs-docs-example">
<div id='chart22d86bc65cf5' class='rChart d3pie'>
</div>
<br/>
<pre><code class='r'>require(magrittr)
require(dplyr)
require(rCharts)
beerPie <- rCharts$new()
beerPie$setLib("//timelyportfolio.github.io/rChartsExtra/d3pie")
# source : The Atlantic April 2014 "The State of American Beer"
# //www.theatlantic.com/business/archive/2014/04/the-state-of-american-beer/360583/
beerData <- rbind(
c("Bud Light",5946776000),
c("Coors Light",2360430000),
c("Budweiser",2110352000),
c("Miller Light",1868866000),
c("Natural Light",1122770000),
c("Busch Light",844276000),
c("Michelob Ultra",777196700),
c("Busch",673394400),
c("Keystone Light",493993000),
c("Miller High Life",476895100),
c("Category total",23707870000)
) %>% data.frame(stringsAsFactors = F) %>% #make data.frame
set_colnames(c("label","value")) %>% #set our column names
mutate(value = as.numeric(value)) #make our values numeric
#change total row to an other row
beerData[nrow(beerData),1] <- "Other"
beerData[nrow(beerData),2] <- sum(beerData[-nrow(beerData),2])
beerPie$params$chartspec <- list(
header = list(
title = list(
text = "Domestic Beer in the U.S. 2013 | Dollar Sales"
),
subtitle = list(
text = "source: The Atlantic, April 2014"
)
)
,data = list(
content = beerData
)
,labels = list(
lines = list(style = "straight")
)
)
beerPie
</code></pre>
</div>
</div>
</div>
</div>
<script>
function drawchart22d86bc65cf5(){
var params = {
"dom": "chart22d86bc65cf5",
"width": 700,
"height": 400,
"chartspec": {
"header": {
"title": {
"text": "Domestic Beer in the U.S. 2013 | Dollar Sales"
},
"subtitle": {
"text": "source: The Atlantic, April 2014"
}
},
"data": {
"content": {
"label": [ "Bud Light", "Coors Light", "Budweiser", "Miller Light", "Natural Light", "Busch Light", "Michelob Ultra", "Busch", "Keystone Light", "Miller High Life", "Other" ],
"value": [ 5.9468e+09, 2.3604e+09, 2.1104e+09, 1.8689e+09, 1.1228e+09, 8.4428e+08, 7.772e+08, 6.7339e+08, 4.9399e+08, 4.769e+08, 1.6675e+10 ]
}
},
"labels": {
"lines": {
"style": "straight"
}
}
},
"id": "chart22d86bc65cf5"
};
function columnsToRecords(data){
var tempdata;
datakeys = Object.keys(data)
tempdata = data[datakeys[1]].map(function(d,i){
var tempobj = {}
datakeys.forEach(function(key){
tempobj[key] = data[key][i]
})
return tempobj
})
return tempdata;
}
params.chartspec.data.content = columnsToRecords(params.chartspec.data.content);
var pie = new d3pie("#" + params.dom, params.chartspec);
return pie;
};
var chart22d86bc65cf5 = drawchart22d86bc65cf5();
</script>
<script></script>
</body>
<script src="//cdnjs.cloudflare.com/ajax/libs/prettify/188.0.0/prettify.js"></script>
<script
src='https://google-code-prettify.googlecode.com/svn-history/r232/trunk/src/lang-r.js'>
</script>
<script>
var pres = document.getElementsByTagName("pre");
for (var i=0; i < pres.length; ++i) {
pres[i].className = "prettyprint linenums";
}
prettyPrint();
</script>
</html>
code.R
require(magrittr)
require(dplyr)
require(rCharts)
beerPie <- rCharts$new()
beerPie$setLib("http://timelyportfolio.github.io/rChartsExtra/d3pie")
# source : The Atlantic April 2014 "The State of American Beer"
# http://www.theatlantic.com/business/archive/2014/04/the-state-of-american-beer/360583/
beerData <- rbind(
c("Bud Light",5946776000),
c("Coors Light",2360430000),
c("Budweiser",2110352000),
c("Miller Light",1868866000),
c("Natural Light",1122770000),
c("Busch Light",844276000),
c("Michelob Ultra",777196700),
c("Busch",673394400),
c("Keystone Light",493993000),
c("Miller High Life",476895100),
c("Category total",23707870000)
) %>% data.frame(stringsAsFactors = F) %>% #make data.frame
set_colnames(c("label","value")) %>% #set our column names
mutate(value = as.numeric(value)) #make our values numeric
#change total row to an other row
beerData[nrow(beerData),1] <- "Other"
beerData[nrow(beerData),2] <- sum(beerData[-nrow(beerData),2])
beerPie$params$chartspec <- list(
header = list(
title = list(
text = "Domestic Beer in the U.S. 2013 | Dollar Sales"
),
subtitle = list(
text = "source: The Atlantic, April 2014"
)
)
,data = list(
content = beerData
)
,labels = list(
lines = list(style = "straight")
)
)
beerPie