首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >amCharts 4:是否可以按总计对堆叠列图进行分类

amCharts 4:是否可以按总计对堆叠列图进行分类
EN

Stack Overflow用户
提问于 2020-08-02 13:35:37
回答 1查看 1.2K关注 0票数 0

是否有可能对具有多个堆叠系列的类别列图进行分类?

我知道CategoryAxis具有属性sortBySeries,但这只允许按一个特定系列进行排序。对于所有系列是否有任何等效的内容,或者像创建一个不可见的总计系列这样的解决方案?

(对我来说,预置数据并不是最好的选择,因为我希望稍后使用chart.invalidateRawData,然后也必须进行排序。)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-04 10:07:58

我得到的当前解决方案是以编程方式向chart.data中的每个对象添加一个chart.data属性。此属性的值是通过添加所有值-数据属性的所有值来计算的。

例如,当单个数据项如下所示时:

代码语言:javascript
运行
复制
{
  country: 'Germany',
  femaleVisitors: 2550,
  maleVisitors: 6029
}

并且为maleVisitorsfemaleVisitors创建了两个堆叠系列,更新后的数据项如下所示:

代码语言:javascript
运行
复制
{
  country: 'Germany',
  femaleVisitors: 2550,
  maleVisitors: 6029,
  _calcTotal: 8579
}

例如,当beforedatavalidated事件启动时,每次更新数据时,都可以执行此计算。然后,我们创建一个以_calcTotal为值数据字段的新列系列,并将本系列中的hidden属性设置为true

通过使用categoryAxis.sortBySeries属性,现在可以使用本系列进行排序。

但是,当引用的排序系列隐藏并且使用时,amcharts最初不会对类别进行排序,而是使用了许多不同类别的 (> ~15)。解决方法是在图表触发invalidateRawData事件时调用ready。这导致了一个肮脏的初始排序动画,但嘿,总比什么都没有好。

JSFiddle:https://jsfiddle.net/0nr3g6es/1/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63216635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档