DevExtreme v24.2 is now available.

Explore our newest features/capabilities and share your thoughts with us.

Your search did not match any results.

React Charts - Range Area

Range area series can be used to display value ranges corresponding to specified arguments. Data is displayed as a color filled space between the line that joins the beginning and the line that joins the end series points.

Fluent
Generic
www.kaggle.com
Thank you for the feedback!
Backend API
import React from 'react'; import Chart, { CommonSeriesSettings, Series, ArgumentAxis, ValueAxis, Label, VisualRange, Format, Export, Legend, } from 'devextreme-react/chart'; import { inflationData } from './data.ts'; function customizeLabelText({ valueText }) { return `${valueText} %`; } function App() { return ( <Chart id="chart" dataSource={inflationData} palette="Violet" title="Annual Inflation Rate in 2010 and 2011" > <CommonSeriesSettings argumentField="date" type="rangearea" /> <Series rangeValue1Field="val2010" rangeValue2Field="val2011" name="2010 - 2011" /> <ArgumentAxis valueMarginsEnabled={false}> <Label format="month" /> </ArgumentAxis> <ValueAxis tickInterval={0.5} valueMarginsEnabled={false} > <VisualRange startValue={0.5} endValue={4} /> <Label customizeText={customizeLabelText}> <Format precision={2} type="fixedPoint" /> </Label> </ValueAxis> <Export enabled={true} /> <Legend visible={false} /> </Chart> ); } export default App;
import React from 'react'; import Chart, { CommonSeriesSettings, Series, ArgumentAxis, ValueAxis, Label, VisualRange, Format, Export, Legend, } from 'devextreme-react/chart'; import { inflationData } from './data.js'; function customizeLabelText({ valueText }) { return `${valueText} %`; } function App() { return ( <Chart id="chart" dataSource={inflationData} palette="Violet" title="Annual Inflation Rate in 2010 and 2011" > <CommonSeriesSettings argumentField="date" type="rangearea" /> <Series rangeValue1Field="val2010" rangeValue2Field="val2011" name="2010 - 2011" /> <ArgumentAxis valueMarginsEnabled={false}> <Label format="month" /> </ArgumentAxis> <ValueAxis tickInterval={0.5} valueMarginsEnabled={false} > <VisualRange startValue={0.5} endValue={4} /> <Label customizeText={customizeLabelText}> <Format precision={2} type="fixedPoint" /> </Label> </ValueAxis> <Export enabled={true} /> <Legend visible={false} /> </Chart> ); } export default App;
import React from 'react'; import ReactDOM from 'react-dom'; import App from './App.tsx'; ReactDOM.render( <App />, document.getElementById('app'), );
export const inflationData = [{ date: new Date(2010, 0, 1), val2010: 1.63, val2011: 2.63, }, { date: new Date(2010, 1, 1), val2010: 2.11, val2011: 2.14, }, { date: new Date(2010, 2, 1), val2010: 2.68, val2011: 2.31, }, { date: new Date(2010, 3, 1), val2010: 3.16, val2011: 2.24, }, { date: new Date(2010, 4, 1), val2010: 3.57, val2011: 2.02, }, { date: new Date(2010, 5, 1), val2010: 3.56, val2011: 1.05, }, { date: new Date(2010, 6, 1), val2010: 3.63, val2011: 1.24, }, { date: new Date(2010, 7, 1), val2010: 3.77, val2011: 1.15, }, { date: new Date(2010, 8, 1), val2010: 3.87, val2011: 1.14, }, { date: new Date(2010, 9, 1), val2010: 3.53, val2011: 1.17, }, { date: new Date(2010, 10, 1), val2010: 3.39, val2011: 1.14, }, { date: new Date(2010, 11, 1), val2010: 2.96, val2011: 1.50, }];
window.exports = window.exports || {}; window.config = { transpiler: 'ts', typescriptOptions: { module: 'system', emitDecoratorMetadata: true, experimentalDecorators: true, jsx: 'react', }, meta: { 'react': { 'esModule': true, }, 'typescript': { 'exports': 'ts', }, 'devextreme/time_zone_utils.js': { 'esModule': true, }, 'devextreme/localization.js': { 'esModule': true, }, 'devextreme/viz/palette.js': { 'esModule': true, }, 'openai': { 'esModule': true, }, }, paths: { 'npm:': 'https://unpkg.com/', 'bundles:': '../../../../bundles/', 'externals:': '../../../../bundles/externals/', }, defaultExtension: 'js', map: { 'ts': 'npm:plugin-typescript@8.0.0/lib/plugin.js', 'typescript': 'npm:typescript@4.2.4/lib/typescript.js', 'jszip': 'npm:jszip@3.10.1/dist/jszip.min.js', '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/prop-types.js', 'rrule': 'npm:rrule@2.6.4/dist/es5/rrule.js', 'luxon': 'npm:luxon@3.4.4/build/global/luxon.min.js', 'es6-object-assign': 'npm:es6-object-assign', 'devextreme': 'npm:devextreme@24.2.6/cjs', 'devextreme-react': 'npm:devextreme-react@24.2.6/cjs', 'devextreme-quill': 'npm:devextreme-quill@1.7.1/dist/dx-quill.min.js', 'devexpress-diagram': 'npm:devexpress-diagram@2.2.15/dist/dx-diagram.js', 'devexpress-gantt': 'npm:devexpress-gantt@4.1.60/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/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', 'devextreme-cldr-data': 'npm:devextreme-cldr-data@1.0.3', // 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.8/standalone.js', 'prettier/parser-html': 'npm:prettier@2.8.8/parser-html.js', }, packages: { 'devextreme': { defaultExtension: 'js', }, 'devextreme-react': { main: 'index.js', }, 'devextreme/events/utils': { main: 'index', }, 'devextreme/common/core/events/utils': { main: 'index', }, 'devextreme/localization/messages': { format: 'json', defaultExtension: 'json', }, '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);
import React from 'react'; import ReactDOM from 'react-dom'; import App from './App.js'; ReactDOM.render(<App />, document.getElementById('app'));
export const inflationData = [ { date: new Date(2010, 0, 1), val2010: 1.63, val2011: 2.63, }, { date: new Date(2010, 1, 1), val2010: 2.11, val2011: 2.14, }, { date: new Date(2010, 2, 1), val2010: 2.68, val2011: 2.31, }, { date: new Date(2010, 3, 1), val2010: 3.16, val2011: 2.24, }, { date: new Date(2010, 4, 1), val2010: 3.57, val2011: 2.02, }, { date: new Date(2010, 5, 1), val2010: 3.56, val2011: 1.05, }, { date: new Date(2010, 6, 1), val2010: 3.63, val2011: 1.24, }, { date: new Date(2010, 7, 1), val2010: 3.77, val2011: 1.15, }, { date: new Date(2010, 8, 1), val2010: 3.87, val2011: 1.14, }, { date: new Date(2010, 9, 1), val2010: 3.53, val2011: 1.17, }, { date: new Date(2010, 10, 1), val2010: 3.39, val2011: 1.14, }, { date: new Date(2010, 11, 1), val2010: 2.96, val2011: 1.5, }, ];
<!DOCTYPE html> <html lang="en"> <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=5.0" /> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/24.2.6/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.tsx"); </script> </head> <body class="dx-viewport"> <div class="demo-container"> <div id="app"></div> </div> </body> </html>
#chart { height: 440px; }