amCharts 4:是否可以按总数对堆叠柱状图的类别进行排序?
创始人
2024-09-30 05:30:33
0

是的,您可以使用amCharts 4对堆叠柱状图的类别进行排序。以下是一个示例代码,演示如何按总数对类别进行排序:

// 创建一个堆叠柱状图的实例
var chart = am4core.create("chartdiv", am4charts.XYChart);

// 向图表添加数据
chart.data = [{
  category: "类别1",
  value1: 10,
  value2: 15,
  value3: 20
}, {
  category: "类别2",
  value1: 5,
  value2: 8,
  value3: 12
}, {
  category: "类别3",
  value1: 20,
  value2: 10,
  value3: 5
}];

// 创建堆叠柱状图的类别轴
var categoryAxis = chart.xAxes.push(new am4charts.CategoryAxis());
categoryAxis.dataFields.category = "category";
categoryAxis.renderer.grid.template.location = 0;

// 创建堆叠柱状图的值轴
var valueAxis = chart.yAxes.push(new am4charts.ValueAxis());
valueAxis.min = 0;
valueAxis.renderer.minWidth = 35;

// 创建堆叠柱状图的系列
var series1 = chart.series.push(new am4charts.ColumnSeries());
series1.dataFields.categoryX = "category";
series1.dataFields.valueY = "value1";
series1.name = "值1";

var series2 = chart.series.push(new am4charts.ColumnSeries());
series2.dataFields.categoryX = "category";
series2.dataFields.valueY = "value2";
series2.name = "值2";

var series3 = chart.series.push(new am4charts.ColumnSeries());
series3.dataFields.categoryX = "category";
series3.dataFields.valueY = "value3";
series3.name = "值3";

// 修改堆叠柱状图的类别排序
chart.events.on("beforedatavalidated", function(ev) {
  chart.data.sort(function(a, b) {
    var sumA = a.value1 + a.value2 + a.value3;
    var sumB = b.value1 + b.value2 + b.value3;
    return sumB - sumA;
  });
});

// 更新图表
chart.validateData();

在上面的示例中,我们使用chart.events.on("beforedatavalidated")事件,将chart.data数组按照每个类别的总数排序。在此之后,我们调用chart.validateData()方法更新图表,以显示排序后的类别。

请注意,该代码假设您已经正确加载了amCharts 4库,并在HTML中创建了一个具有id“chartdiv”的容器元素。您可能需要根据自己的需求进行调整和修改。

相关内容

热门资讯

透视游戏!微乐小程序免费黑科技... 透视游戏!微乐小程序免费黑科技,微乐小程游戏破解器下载(透视)其实真的是有挂(哔哩哔哩)1、上手简单...
六分钟教程!微乐小程序黑科技,... 六分钟教程!微乐小程序黑科技,微乐家乡官方app(开挂)其实是真的挂(2026)1、许多玩家不知道微...
2026版规律!微乐小程序免费... 2026版规律!微乐小程序免费黑科技,广西微乐小程序辅助器(透视)一贯存在有挂(哔哩哔哩)1、该软件...
3分钟辅助!微乐小程序免费黑科... 3分钟辅助!微乐小程序免费黑科技,微信小程序微乐安徽辅助器(开挂)都是真的有挂(2026)暗藏猫腻,...
事发当天!微乐小程序黑科技,微... 事发当天!微乐小程序黑科技,微信小程序微乐安徽辅助苹果(透视)一直存在有挂(哔哩哔哩)1、很好的工具...
第二分钟安装!微乐小程序免费黑... 您好,微乐小程序免费黑科技这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很...
黑科技技巧!微乐小程序免费黑科... 黑科技技巧!微乐小程序免费黑科技,微乐家乡官方app下载(透视)其实真的有挂(哔哩哔哩)1、打开软件...
9分钟脚本!微乐小程序黑科技,... 9分钟脚本!微乐小程序黑科技,微乐小程序微乐房间怎么开挂(开挂)真是是有挂(2026)1、玩家可以在...
昨日!微乐小程序免费黑科技,微... 昨日!微乐小程序免费黑科技,微信微乐辅助器免费安装(透视)果然是有挂(哔哩哔哩)1、用户打开应用后不...
第二分钟神器!微乐小程序免费黑... 第二分钟神器!微乐小程序免费黑科技,微信小程序微乐自建房脚本下载(开挂)其实真的是有挂(2026)1...