forked from arun-sfdc/Analytics-API
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDF14Chart.apexp
46 lines (45 loc) · 1.91 KB
/
DF14Chart.apexp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<apex:page sidebar="false" showHeader="false">
<head>
<title> Report API Demo</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/d3/3.3.3/d3.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/nvd3/1.0.0-beta/nv.d3.min.js"></script>
<script>
var drawChart = function(divId, repId) {
$.ajax('/services/data/v29.0/analytics/reports/'+repId,
{
beforeSend: function(xhr) {
xhr.setRequestHeader('Authorization', 'Bearer {!$Api.Session_ID}');
},
success: function(response) {
$('#'+divId)[0].innerHTML='';
var chartData = [];
$.each(response.groupingsDown.groupings, function(di, de) {
var values = [];
chartData.push({"key":de.label, "values": values});
$.each(response.groupingsAcross.groupings, function(ai, ae) {
values.push({"x": ae.label, "y": response.factMap[de.key+"!"+ae.key].aggregates[0].value});
});
});
var chart = nv.models.multiBarChart().showControls(false).stacked(true);
d3.select('#'+divId).datum(chartData).transition().duration(500).call(chart);
var div = divId, rep=repId;
setTimeout(function() {
drawChart(div, repId)
}, 5000);
}
}
);
};
$(document).ready(function(){
drawChart('chart','00OB0000000cbyb');
drawChart('chart2','00OB0000000cpOp');
});
</script>
</head>
<svg id="chart" height="300px" width="100%" style="margin: 2%;"></svg>
<svg id="chart2" height="300px" width="100%" style="margin: 2%;"></svg>
<style>
.nvtooltip {display: none;}
</style>
</apex:page>