DevExtreme v26.1 is now available.

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

Your search did not match any results.

Angular Charts - Spider Web

This example displays the spider web mode of the PolarChart component. In this mode, chart sectors are straight rather than circular. The spider web mode is enabled using the useSpiderWeb property.

Backend API
<dx-polar-chart id="chart" [useSpiderWeb]="true" title="Fruit Production in 2010 (Millions of Tons)" [dataSource]="productionData" > <dxi-polar-chart-series valueField="apples" name="Apples" ></dxi-polar-chart-series> <dxi-polar-chart-series valueField="grapes" name="Grapes" ></dxi-polar-chart-series> <dxi-polar-chart-series valueField="lemons" name="Lemons" ></dxi-polar-chart-series> <dxi-polar-chart-series valueField="oranges" name="Oranges" ></dxi-polar-chart-series> <dxo-polar-chart-common-series-settings type="line" ></dxo-polar-chart-common-series-settings> <dxo-polar-chart-export [enabled]="true"></dxo-polar-chart-export> <dxo-polar-chart-tooltip [enabled]="true"></dxo-polar-chart-tooltip> </dx-polar-chart>
import { bootstrapApplication } from '@angular/platform-browser'; import { Component, enableProdMode, provideZoneChangeDetection } from '@angular/core'; import { DxPolarChartModule } from 'devextreme-angular'; import { Production, Service } from './app.service'; if (!/localhost/.test(document.location.host)) { enableProdMode(); } @Component({ selector: 'demo-app', templateUrl: './app.component.html', styleUrls: ['./app.component.css'], providers: [Service], imports: [ DxPolarChartModule, ], }) export class AppComponent { productionData: Production[]; constructor(service: Service) { this.productionData = service.getProductionData(); } } bootstrapApplication(AppComponent, { providers: [ provideZoneChangeDetection({ eventCoalescing: true, runCoalescing: true }), ], });
::ng-deep #chart { height: 440px; }
import { Injectable } from '@angular/core'; export class Production { arg: string; apples: number; grapes: number; lemons: number; oranges: number; } const productionData: Production[] = [{ arg: 'USA', apples: 4.21, grapes: 6.22, lemons: 0.8, oranges: 7.47, }, { arg: 'China', apples: 3.33, grapes: 8.65, lemons: 1.06, oranges: 5, }, { arg: 'Turkey', apples: 2.6, grapes: 4.25, lemons: 0.78, oranges: 1.71, }, { arg: 'Italy', apples: 2.2, grapes: 7.78, lemons: 0.52, oranges: 2.39, }, { arg: 'India', apples: 2.16, grapes: 2.26, lemons: 3.09, oranges: 6.26, }]; @Injectable() export class Service { getProductionData(): Production[] { return productionData; } }
<!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/26.1.5/css/dx.light.css" /> <link rel="preload" href="https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBHMdazQ.woff2" as="font" type="font/woff2" crossorigin /> </head> <body class="dx-viewport"> <div class="demo-container"> <demo-app>Loading...</demo-app> </div> <script src="https://cdn.jsdelivr.net/npm/zone.js@0.16.2/bundles/zone.umd.js"></script> <script src="./bundle.js" type="module"></script> </body> </html>