AMCharts - 如何为堆叠柱状图中的每个类别指定颜色方案?
创始人
2024-09-30 04:30:28
0

要为AMCharts的堆叠柱状图中的每个类别指定颜色方案,可以使用AMCharts的categoryAxis对象的labelColorField属性来实现。下面是一个代码示例:

// 创建图表实例
let chart = am4core.create("chartdiv", am4charts.XYChart);

// 设置数据
chart.data = [{
  category: "类别1",
  value1: 10,
  value2: 12,
  value3: 8
}, {
  category: "类别2",
  value1: 5,
  value2: 8,
  value3: 6
}, {
  category: "类别3",
  value1: 3,
  value2: 4,
  value3: 2
}];

// 创建类别轴
let categoryAxis = chart.xAxes.push(new am4charts.CategoryAxis());
categoryAxis.dataFields.category = "category";
categoryAxis.renderer.grid.template.location = 0;

// 创建值轴
let valueAxis = chart.yAxes.push(new am4charts.ValueAxis());

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

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

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

// 设置颜色方案
let colors = ["#FF0000", "#00FF00", "#0000FF"]; // 自定义颜色方案
categoryAxis.renderer.labels.template.propertyFields.fill = "color";
categoryAxis.renderer.labels.template.adapter.add("fill", function(fill, target) {
  let index = categoryAxis.dataItems.indexOf(target.dataItem);
  return am4core.color(colors[index]);
});

上面的代码示例中,我们首先创建了一个堆叠柱状图,并设置了数据和类别轴。然后,我们创建了三个堆叠柱状图系列,并为它们分别设置了值字段和类别字段。最后,我们使用categoryAxis.renderer.labels.template.adapter来根据自定义的颜色方案为每个类别的标签指定颜色。

请注意,categoryAxis.renderer.labels.template.adapter使用categoryAxis.dataItems.indexOf(target.dataItem)来获取每个类别的索引,然后将索引与颜色方案中的颜色对应起来。

相关内容

热门资讯

wepoke有挂!德州扑克微扑... wepoke有挂!德州扑克微扑克俱乐部(透视)一贯是有挂(详细辅助详细教程)是一款可以让一直输的玩家...
aapoker发牌机制!微扑克... aapoker发牌机制!微扑克ai人工智能(透视)本来是有挂(详细辅助2025新版)是一款可以让一直...
aa扑克辅助!德扑之星怎么清楚... aa扑克辅助!德扑之星怎么清楚数据(透视)确实是真的有挂(详细辅助wpk教程)1、不需要AI权限,帮...
aapoker有猫腻!微扑克机... aapoker有猫腻!微扑克机器人代打(透视)确实是有挂(详细辅助教你攻略)1)aapoker有猫腻...
德州之星外挂!微扑克辅助神器(... 您好,德州之星外挂这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这款...
微扑克辅助挂!德州ai辅助外挂... 微扑克辅助挂!德州ai辅助外挂(透视)本然存在有挂(详细辅助wpk教程)1、超多福利:超高返利,海量...
微扑克德州专用辅助器!线上德州... 微扑克德州专用辅助器!线上德州ai智能机器人(透视)从前存在有挂(详细辅助详细教程);人气非常高,a...
德扑之星有作弊!weopke真... 德扑之星有作弊!weopke真的吗(透视)一直存在有挂(详细辅助插件教程)1)德扑之星有作弊辅助挂:...
微扑克有辅助挂!德州ai辅助神... 微扑克有辅助挂!德州ai辅助神器下载(透视)都是真的是有挂(详细辅助AI教程)1、金币登录送、破产送...
德扑之星有猫腻!德扑之星如何分... 德扑之星有猫腻!德扑之星如何分别是否(透视)一向是有挂(详细辅助玩家教你)1、超多福利:超高返利,海...