Your search did not match any results.
Pie Charts

Pie with Resolved Label Overlapping

Documentation
In the PieChart, series may include a large number of points, which may result in point label overlapping. This demo illustrates the resolveLabelOverlapping option that allows you to specify how the widget must behave when point labels overlap.
www.nytimes.com
Copy to CodePen
Apply
Reset
var DemoApp = angular.module('DemoApp', ['dx']); DemoApp.controller('DemoController', function DemoController($scope) { $scope.currentType = types[0]; $scope.chartOptions = { palette: "bright", dataSource: dataSource, title: "Olympic Medals in 2008", margin: { bottom: 20 }, legend: { visible: false }, animation: { enabled: false }, "export": { enabled: true }, series: [{ argumentField: "country", valueField: "medals", label: { visible: true, customizeText: function(arg) { return arg.argumentText + " ( " + arg.percentText + ")"; } } }], bindingOptions: { "resolveLabelOverlapping": "currentType" } }; $scope.typesOptions = { dataSource: types, bindingOptions: { value: "currentType" } }; });
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" > <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" /> <script src="js/jquery-3.1.0.min.js"></script> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/17.1.6/css/dx.spa.css" /> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/17.1.6/css/dx.common.css" /> <link rel="dx-theme" data-theme="generic.light" href="https://cdn3.devexpress.com/jslib/17.1.6/css/dx.light.css" /> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js"></script> <script>window.angular || document.write(decodeURIComponent('%3Cscript src="js/angular.min.js"%3E%3C\/script%3E'))</script> <script src="https://cdn3.devexpress.com/jslib/17.1.6/js/dx.all.js"></script> <script src="data.js"></script> <link rel="stylesheet" type ="text/css" href ="styles.css" /> <script src="index.js"></script> </head> <body class="dx-viewport"> <div class="demo-container" ng-app="DemoApp" ng-controller="DemoController"> <div id="chart-demo"> <div id="pie" dx-pie-chart="chartOptions"></div> <div class="options"> <div class="caption">Options</div> <div class="option"> <span>Label Overlapping Resolution Mode</span> <div id="types" dx-select-box="typesOptions"></div> </div> </div> </div> </div> </body> </html>
.options { padding: 20px; background-color: #f5f5f5; margin-top: 20px; } .option { margin-top: 10px; } .caption { font-size: 18px; font-weight: 500; } .option > span { margin-right: 10px; } .option > .dx-widget { display: inline-block; vertical-align: middle; }
var dataSource = [{ country: "USA", medals: 110 }, { country: "China", medals: 100 }, { country: "Russia", medals: 72 }, { country: "Britain", medals: 47 }, { country: "Australia", medals: 46 }, { country: "Germany", medals: 41 }, { country: "France", medals: 40 }, { country: "South Korea", medals: 31 }, { country: "Japan", medals: 25 }, { country: "Italy", medals: 27 }, { country: "Ukraine", medals: 27 }, { country: "Japan ", medals: 25 }, { country: "Cuba ", medals: 24 }]; var types = ["shift", "hide", "none"];