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 Gauges - Custom Layout

This demo shows how to adjust a relative position of the CircularGauge elements. The range container, value and subvalue indicators have the offset property that specifies a shift from the scale for this element. When this property is assigned to a positive value, the corresponding element moves toward the center of the gauge. Otherwise, it moves away.

Backend API
<dx-circular-gauge id="gauge" [value]="85" [subvalues]="[40, 90]"> <dxo-circular-gauge-subvalue-indicator [offset]="-25" ></dxo-circular-gauge-subvalue-indicator> <dxo-circular-gauge-value-indicator [offset]="50" ></dxo-circular-gauge-value-indicator> <dxo-circular-gauge-scale [startValue]="0" [endValue]="100" [tickInterval]="10" > <dxo-circular-gauge-tick color="#536878"></dxo-circular-gauge-tick> <dxo-circular-gauge-label [indentFromTick]="3"></dxo-circular-gauge-label> </dxo-circular-gauge-scale> <dxo-circular-gauge-range-container [offset]="10"> <dxi-circular-gauge-range [startValue]="0" [endValue]="30" color="#92000A" ></dxi-circular-gauge-range> <dxi-circular-gauge-range [startValue]="30" [endValue]="70" color="#E6E200" ></dxi-circular-gauge-range> <dxi-circular-gauge-range [startValue]="70" [endValue]="100" color="#77DD77" ></dxi-circular-gauge-range> </dxo-circular-gauge-range-container> <dxo-circular-gauge-export [enabled]="true"></dxo-circular-gauge-export> <dxo-circular-gauge-title text="Amount of Tickets Sold (with Min and Max Expected)" > <dxo-circular-gauge-font [size]="28"></dxo-circular-gauge-font> </dxo-circular-gauge-title> </dx-circular-gauge>
import { bootstrapApplication } from '@angular/platform-browser'; import { Component, enableProdMode, provideZoneChangeDetection } from '@angular/core'; import { DxCircularGaugeModule } from 'devextreme-angular'; if (!/localhost/.test(document.location.host)) { enableProdMode(); } @Component({ selector: 'demo-app', templateUrl: './app.component.html', styleUrls: ['./app.component.css'], imports: [ DxCircularGaugeModule, ], }) export class AppComponent { } bootstrapApplication(AppComponent, { providers: [ provideZoneChangeDetection({ eventCoalescing: true, runCoalescing: true }), ], });
::ng-deep #gauge { height: 440px; width: 100%; }
<!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" /> </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>