From 058ed1b58e54bf813754e72ca8c37296cf5f704d Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Tue, 04 Mar 2014 09:56:23 -0500 Subject: [PATCH] Update contributors list --- src/main/java/com/gitblit/wicket/charting/GooglePieChart.java | 21 ++++++++++++++++----- 1 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/gitblit/wicket/charting/GooglePieChart.java b/src/main/java/com/gitblit/wicket/charting/GooglePieChart.java index 945e08b..7119166 100644 --- a/src/main/java/com/gitblit/wicket/charting/GooglePieChart.java +++ b/src/main/java/com/gitblit/wicket/charting/GooglePieChart.java @@ -16,15 +16,17 @@ package com.gitblit.wicket.charting; import java.text.MessageFormat; +import java.util.ArrayList; import java.util.Collections; +import java.util.List; import com.gitblit.utils.StringUtils; /** * Builds an interactive pie chart using the Visualization API. - * + * * @author James Moger - * + * */ public class GooglePieChart extends GoogleChart { @@ -44,17 +46,26 @@ line(sb, MessageFormat.format("{0}.addRows({1,number,0});", dName, values.size())); Collections.sort(values); + List<ChartValue> list = new ArrayList<ChartValue>(); + + int maxSlices = 10; + + if (values.size() > maxSlices) { + list.addAll(values.subList(0, maxSlices)); + } else { + list.addAll(values); + } StringBuilder colors = new StringBuilder("colors:["); - for (int i = 0; i < values.size(); i++) { - ChartValue value = values.get(i); + for (int i = 0; i < list.size(); i++) { + ChartValue value = list.get(i); colors.append('\''); colors.append(StringUtils.getColor(value.name)); colors.append('\''); if (i < values.size() - 1) { colors.append(','); } - line(sb, MessageFormat.format("{0}.setValue({1,number,0}, 0, ''{2}'');", dName, i, + line(sb, MessageFormat.format("{0}.setValue({1,number,0}, 0, \"{2}\");", dName, i, value.name)); line(sb, MessageFormat.format("{0}.setValue({1,number,0}, 1, {2,number,0.0});", dName, i, value.value)); -- Gitblit v1.9.1