amPieChart中组合的阴性标签和值的分离

问题描述 投票:1回答:1

没有人知道是否有办法拆分amCharts v3中amPieChart中的自动合并否定标签。似乎它会自动将所有负值添加到一个名为“其他”的值中。如果只有一个值,那么它将显示它并且是它的值,但是如果有更多的值,那么它将它们加在一起,并用“其他”替换标签。

我通过了amPieChart v3 documentation,但找不到能做到这一点的任何东西:

Example

{ "country": "Belgium", "litres": -60 }, { "country": "The Netherlands", "litres": -50 }

pie-chart amcharts negative-number
1个回答
0
投票
图表将低于groupPercent阈值(默认为零)的值分组。如果仅要将分组删除到“其他”类别中,请将此值设置为足够小的负数以将其包含在内。

groupPercent

如果需要将这些值显示为切片,则必须提供绝对值作为valueFields,并在显示字段(例如AmCharts.makeChart("...", { // ... "groupPercent": -100, //sample value }); 和图例的balloonText,即,]中引用实数作为单独的属性,>

valueText

演示使用下面的绝对值:

 

var chartData = [ // ... { "country": "Belgium", "absValue": 60, "litres": -60 }, // ... ]; AmCharts.makeChart("...", { // ... "valueField": "absValue", "balloonText": "[[title]]: [[litres]]", //... "legend": { "valueText": "[[litres]]", // ... } });
var chartData = [{ "country": "Lithuania", "litres": 501.9 }, { "country": "Czech Republic", "litres": 301.9 }, { "country": "Ireland", "litres": 201.1 }, { "country": "Germany", "litres": 165.8 }, { "country": "Australia", "litres": 139.9 }, { "country": "Austria", "litres": 128.3 }, { "country": "UK", "litres": 99 }, { "country": "Belgium", "litres": -60 }, { "country": "The Netherlands", "litres": -50 }]; chartData.forEach(function(dataItem) { dataItem.absValue = Math.abs(dataItem.litres); }); var chart = AmCharts.makeChart("chartdiv", { "type": "pie", "startDuration": 0, "theme": "none", "addClassNames": true, "legend": { "valueText": "[[litres]]", "position": "right", "marginRight": 100, "autoMargins": false }, "innerRadius": "30%", "defs": { "filter": [{ "id": "shadow", "width": "200%", "height": "200%", "feOffset": { "result": "offOut", "in": "SourceAlpha", "dx": 0, "dy": 0 }, "feGaussianBlur": { "result": "blurOut", "in": "offOut", "stdDeviation": 5 }, "feBlend": { "in": "SourceGraphic", "in2": "blurOut", "mode": "normal" } }] }, "dataProvider": chartData, "valueField": "absValue", "balloonText": "[[title]]: [[litres]]", "titleField": "country", "export": { "enabled": true } }); chart.addListener("init", handleInit); chart.addListener("rollOverSlice", function(e) { handleRollOver(e); }); function handleInit() { chart.legend.addListener("rollOverItem", handleRollOver); } function handleRollOver(e) { var wedge = e.dataItem.wedge.node; wedge.parentNode.appendChild(wedge); }
#chartdiv {
  width: 100%;
  height: 500px;
  font-size: 11px;
}

.amcharts-pie-slice {
  transform: scale(1);
  transform-origin: 50% 50%;
  transition-duration: 0.3s;
  transition: all .3s ease-out;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -o-transition: all .3s ease-out;
  cursor: pointer;
  box-shadow: 0 0 30px 0 #000;
}

.amcharts-pie-slice:hover {
  transform: scale(1.1);
  filter: url(#shadow);
}
© www.soinside.com 2019 - 2024. All rights reserved.