Your search did not match any results.

Chart on Background with Series Template

Documentation

This demo demonstrates the ability of the RangeSelector to display the Chart component with series defined using a series template.

Backend API
import React from 'react'; import RangeSelector, { Margin, Chart, CommonSeriesSettings, SeriesTemplate, Scale, Label, Format, } from 'devextreme-react/range-selector'; import { dataSource } from './data.js'; function App() { return ( <RangeSelector id="range-selector" title="Select a Year Period" dataSource={dataSource} > <Margin top={50} /> <Chart> <CommonSeriesSettings argumentField="year" valueField="oil" type="spline" /> <SeriesTemplate customizeSeries={customizeSeries} nameField="country" /> </Chart> <Scale> <Label> <Format type="decimal" /> </Label> </Scale> </RangeSelector> ); } function customizeSeries(valueFromNameField) { return valueFromNameField === 'USA' ? { color: 'red', } : {}; } export default App;
import React from 'react'; import ReactDOM from 'react-dom'; import App from './App.js'; ReactDOM.render( <App />, document.getElementById('app'), );
<!DOCTYPE html> <html> <head> <title>DevExtreme Demo</title> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" /> <link rel="dx-theme" data-theme="generic.light" href="https://cdn3.devexpress.com/jslib/23.1.5/css/dx.light.css" /> <link rel="stylesheet" type="text/css" href="styles.css" /> <script src="https://unpkg.com/core-js@2.6.12/client/shim.min.js"></script> <script src="https://unpkg.com/systemjs@0.21.3/dist/system.js"></script> <script type="text/javascript" src="config.js"></script> <script type="text/javascript"> System.import("./index.js"); </script> </head> <body class="dx-viewport"> <div class="demo-container"> <div id="app"></div> </div> </body> </html>
#range-selector { height: 310px; }
export const dataSource = [ { year: 1970, country: 'Saudi Arabia', oil: 186.7 }, { year: 1980, country: 'Saudi Arabia', oil: 480.4 }, { year: 1990, country: 'Saudi Arabia', oil: 319.6 }, { year: 2000, country: 'Saudi Arabia', oil: 465 }, { year: 2008, country: 'Saudi Arabia', oil: 549.7 }, { year: 2009, country: 'Saudi Arabia', oil: 428.4 }, { year: 1970, country: 'USA', oil: 557.8 }, { year: 1980, country: 'USA', oil: 423.2 }, { year: 1990, country: 'USA', oil: 340.1 }, { year: 2000, country: 'USA', oil: 282.9 }, { year: 2008, country: 'USA', oil: 280 }, { year: 2009, country: 'USA', oil: 298.9 }, { year: 1970, country: 'Mexico', oil: 24.7 }, { year: 1980, country: 'Mexico', oil: 109.2 }, { year: 1990, country: 'Mexico', oil: 145.3 }, { year: 2000, country: 'Mexico', oil: 148.3 }, { year: 2008, country: 'Mexico', oil: 132.1 }, { year: 2009, country: 'Mexico', oil: 121.6 }, ];
window.exports = window.exports || {}; window.config = { transpiler: 'plugin-babel', meta: { 'devextreme/localization.js': { 'esModule': true, }, }, paths: { 'npm:': 'https://unpkg.com/', }, defaultExtension: 'js', map: { 'react': 'npm:react@17.0.2/umd/react.development.js', 'react-dom': 'npm:react-dom@17.0.2/umd/react-dom.development.js', 'prop-types': 'npm:prop-types@15.8.1/prop-types.js', 'rrule': 'npm:rrule@2.6.4/dist/es5/rrule.js', 'luxon': 'npm:luxon@1.28.1/build/global/luxon.min.js', 'es6-object-assign': 'npm:es6-object-assign@1.1.0', 'devextreme': 'npm:devextreme@23.1.6/cjs', 'devextreme-react': 'npm:devextreme-react@23.1.6', 'jszip': 'npm:jszip@3.7.1/dist/jszip.min.js', 'devextreme-quill': 'npm:devextreme-quill@1.6.2/dist/dx-quill.min.js', 'devexpress-diagram': 'npm:devexpress-diagram@2.2.2/dist/dx-diagram.js', 'devexpress-gantt': 'npm:devexpress-gantt@4.1.49/dist/dx-gantt.js', '@devextreme/runtime': 'npm:@devextreme/runtime@3.0.12', 'inferno': 'npm:inferno@7.4.11/dist/inferno.min.js', 'inferno-compat': 'npm:inferno-compat/dist/inferno-compat.min.js', 'inferno-create-element': 'npm:inferno-create-element@7.4.11/dist/inferno-create-element.min.js', 'inferno-dom': 'npm:inferno-dom/dist/inferno-dom.min.js', 'inferno-hydrate': 'npm:inferno-hydrate@7.4.11/dist/inferno-hydrate.min.js', 'inferno-clone-vnode': 'npm:inferno-clone-vnode/dist/inferno-clone-vnode.min.js', 'inferno-create-class': 'npm:inferno-create-class/dist/inferno-create-class.min.js', 'inferno-extras': 'npm:inferno-extras/dist/inferno-extras.min.js', // SystemJS plugins 'plugin-babel': 'npm:systemjs-plugin-babel@0.0.25/plugin-babel.js', 'systemjs-babel-build': 'npm:systemjs-plugin-babel@0.0.25/systemjs-babel-browser.js', // Prettier 'prettier/standalone': 'npm:prettier@2.8.4/standalone.js', 'prettier/parser-html': 'npm:prettier@2.8.4/parser-html.js', }, packages: { 'devextreme': { defaultExtension: 'js', }, 'devextreme-react': { main: 'index.js', }, 'devextreme/events/utils': { main: 'index', }, 'devextreme/events': { main: 'index', }, 'es6-object-assign': { main: './index.js', defaultExtension: 'js', }, }, packageConfigPaths: [ 'npm:@devextreme/*/package.json', 'npm:@devextreme/runtime@3.0.12/inferno/package.json', ], babelOptions: { sourceMaps: false, stage0: true, react: true, }, }; System.config(window.config);