FusionCharts - Changing size of the chart through API
Created using FusionCharts Suite XT - www.fusioncharts.com
by FusionCharts
HTML
<script src="https://cdn.fusioncharts.com/fusioncharts/latest/fusioncharts.js"></script>
<script src="https://cdn.fusioncharts.com/fusioncharts/latest/themes/fusioncharts.theme.fusion.js"></script>
<!--Changing the chart size dynamically through FusionCharts API (resizeTo method) -->
<div id="chart-container">FusionCharts will render here</div>
<div id='controllers'>
<label for='width'>Width</label>
<input id='width' type='text' value='550' />
<label for='height'>Height</label>
<input id='height' type='text' value='350' />
<input id='change' class='resizebtn' type='Button' value='Resize' />
</div>
CSS
input[type=text] {
max-width: 50px;
font-family: Verdana, sans;
font-size: 13px;
font-style: normal;
font-weight: normal;
}
#controllers {
position: inherit;
left: 10px;
font-family: Verdana, sans;
font-size: 13px;
font-style: normal;
font-weight: bold;
}
.resizebtn {
font-family: Verdana, sans;
font-size: 14px;
font-style: normal;
}
JavaScript
FusionCharts.ready(function() {
var iniWidth = 500,
iniHeight = 300,
widthInput = document.getElementById('width'),
heightInput = document.getElementById('height'),
changeBtn = document.getElementById('change'),
setDimensionOnClick = function() {
var w = parseInt(widthInput.value, 10) || iniWidth,
h = parseInt(heightInput.value, 10) || iniHeight;
if (w && h) {
revenueChart.resizeTo(w, h);
}
},
revenueChart = new FusionCharts({
type: 'column2d',
renderAt: 'chart-container',
width: iniWidth,
height: iniHeight,
dataFormat: 'json',
dataSource: {
"chart": {
"caption": "Monthly revenue",
"subCaption": "Last year",
"xAxisName": "Month",
"yAxisName": "Amount ($)",
"numberPrefix": "$",
"theme": "fusion"
},
"data": [{
"label": "Jan",
"value": "420000"
},
{
"label": "Feb",
"value": "810000"
},
{
"label": "Mar",
"value": "720000"
},
{
"label": "Apr",
"value": "550000"
},
{
"label": "May",
"value": "910000"
},
{
"label": "Jun",
"value": "510000"
},
{
"label": "Jul",
"value": "680000"
},
{
"label": "Aug",
"value": "620000"
},
{
"label": "Sep",
"value": "610000"
},
{
"label": "Oct",
"value": "490000"
},
{
"label": "Nov",
"value": "900000"
},
{
"label": "Dec",
"value": "730000"
}
]
}
});
revenueChart.render();
if (changeBtn.addEventListener) {
...