-
Create a
package.jsonwhich includesreact,react-dom, and@amcharts/amcharts3-react:{ "devDependencies": { "react": "^16.0.0", "react-dom": "^16.0.0", "@amcharts/amcharts3-react": "^3.0.0" } } -
Run
npm install -
Use
<script>tags in your HTML file to load AmCharts:<script src="https://www.amcharts.com/lib/3/amcharts.js"></script> <script src="https://www.amcharts.com/lib/3/serial.js"></script> <script src="https://www.amcharts.com/lib/3/themes/light.js"></script>
-
If you are using a bundler (like Webpack), import the
@amcharts/amcharts3-reactplugin:import AmCharts from "@amcharts/amcharts3-react";
If you are using
<script>tags, include the React andamcharts3-react.jsfiles in your HTML:<script src="node_modules/react/umd/react.production.min.js"></script> <script src="node_modules/react-dom/umd/react-dom.production.min.js"></script> <script src="node_modules/create-react-class/create-react-class.min.js"></script> <script src="node_modules/@amcharts/amcharts3-react/amcharts3-react.js"></script>
React.createElement(AmCharts.React, {
className: "my-class",
style: {
width: "100%",
height: "500px"
},
options: {
"type": "serial",
"theme": "light",
"graphs": [...],
"dataProvider": [...]
}
})Or alternatively if you are using JSX:
<AmCharts.React
className="my-class"
style={{
width: "100%",
height: "500px"
}}
options={{
"type": "serial",
"theme": "light",
"graphs": [...],
"dataProvider": [...]
}} />You can also define the options object separately:
var config = {
"type": "serial",
"theme": "light",
"graphs": [...],
"dataProvider": [...]
};
<AmCharts.React options={config} />The options property supports exactly the same configuration as the AmCharts.makeChart method, so all of the AmCharts demos work the same.
Changes to options are automatically detected when rendering (you do not need to call validateNow or validateData).
In addition, this plugin automatically generates an id, so you do not need to specify it.
You can find some examples in the examples folder.
If you want to use plugins (like dataloader, export, responsive, animate, etc.) you will need to include the appropriate <script> tags.
Here is an example for the export plugin:
<link rel="stylesheet" href="https://www.amcharts.com/lib/3/plugins/export/export.css" type="text/css" media="all" />
<script src="https://www.amcharts.com/lib/3/plugins/export/export.min.js"></script>You can see an example program in the examples/webpack-export folder. It updates the chart's dataProvider every 3 seconds.
- Adding in support for React 17 and React 18.
- Adding in
classNameproperty for specifying the CSS class for the element.
- Fixing version ranges for
reactandreact-dom
-
Rather than passing in the configuration directly, instead you must pass in the configuration using the new
optionsproperty. -
Adding in
delayproperty for controlling the chart delay.
- Reverting the code which waits for the chart to initialize.
- It now waits for the chart to initialize before it updates (this fixes some errors).
- Republishing 2.0.4
-
Fixing a deprecation warning with React (thanks to Izumi-kun)
-
Working around a bug with
groupToPeriods
- Fixing an error when updating maps
- Fixing a warning with
React.createClass(thanks to Izumi-kun)
-
Major breaking change: this plugin no longer automatically imports AmCharts, so you must use
<script>tags to load AmCharts -
Major breaking change: you must now use
AmCharts.Reactrather thanAmCharts
- Fixing another bug with updating the chart data
- Fixing a bug where the chart does not zoom out when changing the
dataProvider
- Fixing a bug where the chart won't show up properly on the first update
- Fixing a bug which caused stock charts to not update correctly
- Deprecating using
AmChartswith Webpack, instead useAmCharts.React - Adding in the various global
AmChartsproperties for Webpack
- Fixing a bug that caused the
listenersto trigger multiple times
- Fixing an issue with
peerDependencies
- Adding in support for npm / Webpack
- Initial release