Highcharts Stacked 3D Column Chart
The following example demonstrates a stacked 3D column chart.
We have already learned the basic configuration syntax of Highcharts in previous chapters. Now, let's look at other configurations.
Configuration
chart.options3d Configuration
The following lists the basic configuration for 3D charts. Set the chart's type property to column, and the options3d option can set the three-dimensional effect.
var chart = {
type: 'column',
options3d: {
enabled: true, // Show whether the chart is set to 3D; we set it to true
alpha: 15, // Chart view rotation angle
beta: 15, // Chart view rotation angle
depth: 50, // Total depth of the chart, default is 100
viewDistance: 25 // Define the viewing distance of the chart
}
};
Example
Filename: highcharts_3d_stacking.htm
<html>
<head>
<meta charset="UTF-8" />
<title>Highcharts Tutorial | tutorialpro.org(tutorialpro.org)</title>
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/highcharts-3d.js"></script>
</head>
<body>
<div id="container" style="width: 550px; height: 400px; margin: 0 auto"></div>
<script language="JavaScript">
$(document).ready(function() {
var chart = {
type: 'column',
marginTop: 80,
marginRight: 40,
options3d: {
enabled: true,
alpha: 15,
beta: 15,
viewDistance: 25,
depth: 40
}
};
var title = {
text: 'Total Fruit Consumption by Category'
};
var xAxis = {
categories: ['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas']
};
var yAxis = {
allowDecimals: false,
min: 0,
title: {
text: 'Number of Fruits'
}
};
var tooltip = {
headerFormat: '<b>{point.key}</b><br>',
pointFormat: '<span style="color:{series.color}">\u25CF</span> {series.name}: {point.y} / {point.stackTotal}'
};
var plotOptions = {
column: {
stacking: 'normal',
depth: 40
}
};
var series= [{
name: 'John',
data: [5, 3, 4, 7, 2],
stack: 'male'
}, {
name: 'Joe',
data: [3, 4, 4, 2, 5],
stack: 'male'
}, {
name: 'Jane',
data: [2, 5, 6, 2, 1],
stack: 'female'
}, {
name: 'Janet',
data: [3, 0, 4, 4, 3],
stack: 'female'
}];
var json = {};
json.chart = chart;
json.title = title;
json.xAxis = xAxis;
json.yAxis = yAxis;
json.tooltip = tooltip;
json.plotOptions = plotOptions;
json.series = series;
$('#container').highcharts(json);
});
</script>
</body>
</html>
The above example outputs the following result: