Using RequireJS
amCharts 4 can be used with RequireJS after some configuration.
Firstly, add the RequireJS dependency
Section titled “Firstly, add the RequireJS dependency”<script src="/scripts/vendors/require.js"></script>NOTE Please notice "/scripts/vendors" is a suggested location for the purpose of this tutorial.
Include amCharts 4
Section titled “Include amCharts 4”Download amCharts 4 from the zip file and add it to the "/scripts/vendors" folder.
Configuring RequireJS
Section titled “Configuring RequireJS”Please check more about how to configure RequireJS here.
You will need to add shims for the core, charts and your chosen theme. amCharts 4 loads its scripts on the global scope and the module needs to be return using the init method.
charts and themes need to dependent on the core.
<script>require.config({ baseUrl: "/scripts/vendors", shim: { 'amcharts4/core': { init: function () { return window.am4core; } }, 'amcharts4/charts': { deps: ['amcharts4/core'], exports: 'amcharts4/charts', init: function () { return window.am4charts; } }, 'amcharts4/themes/animated': { deps: ['amcharts4/core'], exports: 'amcharts4/themes/animated', init: function () { return window.am4themes_animated; } } }});</script>Create your first chart with RequireJS
Section titled “Create your first chart with RequireJS”Add the tag to render the chart.
<div id="chartdiv"></div>Add the chart dimensions using CSS.
<style>#chartdiv { width: 400px; height: 400px;}</style>Now you can require the desired modules and create the chart.
<script>require([ 'amcharts4/core', 'amcharts4/charts', 'amcharts4/themes/animated'], function (am4core, am4charts, am4themes_animated) {
am4core.useTheme(am4themes_animated);
// Create chart instance var chart = am4core.create("chartdiv", am4charts.PieChart);
// Add data chart.data = [{ "country": "Lithuania", "litres": 501.9 }, { "country": "Czech Republic", "litres": 301.9 }, { "country": "Ireland", "litres": 201.1 }, { "country": "Germany", "litres": 165.8 }, { "country": "Australia", "litres": 139.9 }, { "country": "Austria", "litres": 128.3 }, { "country": "UK", "litres": 99 }, { "country": "Belgium", "litres": 60 }, { "country": "The Netherlands", "litres": 50 }];
// Add and configure Series var pieSeries = chart.series.push(new am4charts.PieSeries()); pieSeries.dataFields.value = "litres"; pieSeries.dataFields.category = "country";
// Add export chart.exporting.menu = new am4core.ExportMenu();
});</script>Full example
Section titled “Full example”The HTML
Section titled “The HTML”<!DOCTYPE html><html lang="en"><head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>AmCharts</title>
<link rel="stylesheet" href="/styles/app.css">
</head><body>
<div id="chartdiv"></div>
<script src="/scripts/vendors/require.js"></script> <script> require.config({ baseUrl: "/scripts/vendors", shim: { 'amcharts4/core': { init: function () { return window.am4core; } }, 'amcharts4/charts': { deps: ['amcharts4/core'], exports: 'amcharts4/charts', init: function () { return window.am4charts; } }, 'amcharts4/themes/animated': { deps: ['amcharts4/core'], exports: 'amcharts4/themes/animated', init: function () { return window.am4themes_animated; } } } }); </script> <script src="/scripts/chart.js"></script>
</body></html>The CSS
Section titled “The CSS”#chartdiv { width: 400px; height: 400px;}The JavaScript
Section titled “The JavaScript”require([ 'amcharts4/core', 'amcharts4/charts', 'amcharts4/themes/animated'], function (am4core, am4charts, am4themes_animated) {
am4core.useTheme(am4themes_animated);
// Create chart instance var chart = am4core.create("chartdiv", am4charts.PieChart);
// Add data chart.data = [{ "country": "Lithuania", "litres": 501.9 }, { "country": "Czech Republic", "litres": 301.9 }, { "country": "Ireland", "litres": 201.1 }, { "country": "Germany", "litres": 165.8 }, { "country": "Australia", "litres": 139.9 }, { "country": "Austria", "litres": 128.3 }, { "country": "UK", "litres": 99 }, { "country": "Belgium", "litres": 60 }, { "country": "The Netherlands", "litres": 50 }];
// Add and configure Series var pieSeries = chart.series.push(new am4charts.PieSeries()); pieSeries.dataFields.value = "litres"; pieSeries.dataFields.category = "country";
// Add export chart.exporting.menu = new am4core.ExportMenu();
});Download the example
Section titled “Download the example”You can download the example and run it if you have NodeJS and npm installed.
Run the following commands on the root.
npm i && node server.jsNOTE Make sure you download the newest amCharts 4 version.