public String buildOneDimensionalChart <T>(chartTypeEnum chartType, String title, List <T> source, Func <T, String> label, Func <T, String> value, Func <T, String> color = null) { var fields = GetDefaultValues(); fields.Add("title", title); //List<String> color_set = new List<string>() { "69D2E7", "#E0E4CC", "#F38630", "#96CE7F", "#CEBC17", "#CE4264" }; circularSelector <String> color_selector = new circularSelector <String>("69D2E7", "#E0E4CC", "#F38630", "#96CE7F", "#CEBC17", "#CE4264"); foreach (T item in source) { String label_str = label(item); String value_str = value(item); String color_str = ""; if (color == null) { color_str = color_selector.next(); } else { color_str = color(item); } fields["colors"] = fields["colors"].add(color_str, ","); fields["data"] = fields["data"].add(value_str, ","); fields["labels"] = fields["labels"].add(label_str, ","); } stringTemplate template = new stringTemplate(chartTemplate[chartType]); return(template.applyToContent(fields)); }
public String buildOneDimensionalChart <T>(chartTypeEnum chartType, String title, Dictionary <String, Double> source) { var fields = GetDefaultValues(); fields.Add("title", title); //List<String> color_set = new List<string>() { "69D2E7", "#E0E4CC", "#F38630", "#96CE7F", "#CEBC17", "#CE4264" }; circularSelector <String> color_selector = new circularSelector <String>("69D2E7", "#E0E4CC", "#F38630", "#96CE7F", "#CEBC17", "#CE4264"); foreach (var item in source) { String data = "columns: -:: "; String column = "-:: !" + item.Key + "!".add(item.Value.ToString(), ", ") + " ::-"; fields["data"] = fields["data"].add(column, ", "); fields["data"] += " ::-"; } stringTemplate template = new stringTemplate(chartTemplate[chartType]); return(template.applyToContent(fields)); }