首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gRaphael条形图:条形图和排序值的限制

gRaphael条形图:条形图和排序值的限制
EN

Stack Overflow用户
提问于 2012-10-17 18:45:05
回答 1查看 237关注 0票数 1

我可以有一个条形图与条形图的数量限制一样,gRaphael饼图只接受10个扇区,并使其余的“其他”,这是少于10%的total.same方式,gRaphael条形图只有10条,并使其余的“其他”?

谢谢你,迈西利

EN

回答 1

Stack Overflow用户

发布于 2012-10-19 10:39:23

这目前不是g.bar类中的一个选项,因此您可能必须更新源代码才能实现这一点。

在看了他们在g.pie.js中对"other“部分做了什么之后,这里是我推荐的:

  • 向属性数组添加了一个类似于“maxbar”的选项。当您传入此选项时,这将是图形上显示的最大条数。如果maxbar= 10并且超过10个段,1到9将是唯一的,10将是第10个到末尾的组合。
  • 由于它们处理值数组的方式,我认为最好的解决方案是在第一次访问值数组之前覆盖它。在vbarchart和hbarchart中,在初始化图表元素之后,您应该添加一个如下所示的for循环:

if (values.length > opts.maxbars) { for (var i=maxbar;i< values.length;i++) {valuesmaxbars 1 += valuesi;valuesi = null;}}

这是将第10个(例如)元素之后的所有值添加到第10个元素,并清除数组中的剩余插槽。现在您拥有的是一个由10个元素组成的数组,其中第10个元素是10th+元素的总和。请注意,在这个简单的循环中,我只考虑了每个值不是数组的情况。您需要检查valuesi并添加这些元素,而不是valuesi,后者可能需要嵌套的for循环或三元运算符。查看g.bar的其余部分,看看如何在其他地方处理此问题。

  • 在绘制标签的代码部分,您可能希望在循环中添加检查,如if (opts.maxbars && (i == opts.maxbars - 1)) { //使用"OTHER“}

标记条形图

对不起,我没有任何实际的工作代码来实现这一点,但它将涉及更多,并需要一些试验和错误。希望这能给你指明正确的方向。

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

https://stackoverflow.com/questions/12932571

复制
相关文章

相似问题

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