I have the following HTML code. It is working.
<html>
<head>
<title>My First chart using FusionCharts - Using pure JavaScript</title>
<script type="text/javascript" src=".6.2.min.js"></script>
<script language="JavaScript" src=".js"></script>
<script language="JavaScript" src=".HC.js"></script>
<script language="JavaScript" src=".HC.Charts.js"></script>
<script language="JavaScript" src=".min.js"></script>
</head>
<body>
<div id="chartContainer">FusionCharts will load here!</div>
<script type="text/javascript">
//FusionCharts.setCurrentRenderer('javascript');
var chartObj = new FusionCharts({
swfUrl: ".swf",
width: "500",
height: "300",
id: 'sampleChart',
dataSource: ".xml",
dataFormat: FusionChartsDataFormats.XMLURL,
renderAt: 'chartContainer'
}).render();
</script>
</body>
</html>
When I use the setCurrentRenderer
javascripde mode. It gives me "no data to display".
EDIT: example source - .asp?id=column2d_1
I have the following HTML code. It is working.
<html>
<head>
<title>My First chart using FusionCharts - Using pure JavaScript</title>
<script type="text/javascript" src="http://www.fusioncharts./lib/jquery/jquery-1.6.2.min.js"></script>
<script language="JavaScript" src="http://www.fusioncharts./lib/js/FusionCharts.js"></script>
<script language="JavaScript" src="http://www.fusioncharts./lib/js/FusionCharts.HC.js"></script>
<script language="JavaScript" src="http://www.fusioncharts./lib/js/FusionCharts.HC.Charts.js"></script>
<script language="JavaScript" src="http://www.fusioncharts./lib/js/jquery.min.js"></script>
</head>
<body>
<div id="chartContainer">FusionCharts will load here!</div>
<script type="text/javascript">
//FusionCharts.setCurrentRenderer('javascript');
var chartObj = new FusionCharts({
swfUrl: "http://www.fusioncharts./demos/gallery/Charts/Column2D.swf",
width: "500",
height: "300",
id: 'sampleChart',
dataSource: "http://www.fusioncharts./demos/gallery/Data/Col2D1.xml",
dataFormat: FusionChartsDataFormats.XMLURL,
renderAt: 'chartContainer'
}).render();
</script>
</body>
</html>
When I use the setCurrentRenderer
javascripde mode. It gives me "no data to display".
EDIT: example source - http://www.fusioncharts./demos/gallery/column-and-bar/chart.asp?id=column2d_1
Share Improve this question edited Jul 20, 2012 at 5:24 Mat 207k41 gold badges402 silver badges418 bronze badges asked Apr 6, 2012 at 13:27 gotqngotqn 43.7k46 gold badges166 silver badges254 bronze badges 2- 1 Why are you importing jQuery twice?? – Pointy Commented Apr 6, 2012 at 13:28
- I have copy this example from their site. I have delete some includes because I am not using them. This has left, but if you delete it, it gives you the same results - working without the javascript mode and not working with it. – gotqn Commented Apr 6, 2012 at 13:31
3 Answers
Reset to default 4Loading data in JavaScript from the FusionCharts website results in cross-domain errors. It is security built-in by the browser itself.
XMLHttpRequest cannot load http://www.fusioncharts./demos/gallery/Data/Col2D1.xml. Origin http://localhost is not allowed by Access-Control-Allow-Origin.
Try hosting the JavaScript files, Flash files and the XML data on your own local server, and it should work perfectly.
i have used below example with javascript rendering:
<?xml version="1.0" encoding="iso-8859-1"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3/1999/xhtml">
<head>
<title>Multi Series Bar 2D Chart</title>
<link href="../assets/ui/css/style.css" rel="stylesheet" type="text/css" />
<link href="../assets/prettify/prettify.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="../../Charts/jquery.min.js"></script>
<script type="text/javascript" src="../../Charts/FusionCharts.js"></script>
<script type="text/javascript" src="../assets/prettify/prettify.js"></script>
<script type="text/javascript" src="../assets/ui/js/json2.js"></script>
<script type="text/javascript" src="../assets/ui/js/lib.js" ></script>
<script type="text/javascript" src="../assets/ui/js/DD_belatedPNG_0.0.8a-min.js"></script>
<script>
/* select the element name, css selector, background etc */
DD_belatedPNG.fix('img');
/* string argument can be any CSS selector */
</script>
<p> </p>
<P align="center"></P>
<![endif]-->
</head>
<body>
<h3 class="chart-title">Multi Series Bar 2D Chart</h3>
<p> </p>
<script type="text/javascript" src="../Data/String/js/MSBar3D1.js" ></script>
<div id="chartdiv" align="center">Chart will load here</div>
<script type="text/javascript">
alert(GALLERY_RENDERER);
FusionCharts.setCurrentRenderer("javascript");
var chart = new FusionCharts("MSBar3D.swf", "ChartId", "560", "400", "0", "0");
chart.setXMLData( dataString );
chart.render("chartdiv");
</script>
<p> </p>
<p align="center">3D Bar chart showing sales parison of 5 countries across 3 years. Click on a legend item to show/hide the data series.</p>
and it works fine with java script rendering..i hope this example helps
Cross domain issues can be solved by implementing CORS - cross origin resource sharing. Make sure the server that provides the data sends some extra http-headers in the response:
Access-Control-Allow-Origin: http://the_url_that_hosts_the_page
Access-Control-Allow-Headers: If-Modified-Since