public static List <VfChartSeries> GetVisifireChartSeries(EpmChartDataSeriesList chartDataSeries) { var visifireChartSeriesList = new List <VfChartSeries>(); foreach (var dataSeries in chartDataSeries) { // Setting null or empty to "No Value" otherwise it will be rendered as "Dataset0" by Visifire. var seriesName = string.IsNullOrEmpty(dataSeries.SeriesName) ? "No Value" : dataSeries.SeriesName; var visifireChartSeries = new VfChartSeries(seriesName); foreach (var dataPoint in dataSeries.ChartDataPoints) { var visifireDataPoint = new VfPoint(dataPoint.XAxisLabel, dataPoint.YAxisValuesAggregated, dataPoint.ZAxisValue); visifireDataPoint.DataPointColor = dataPoint.DataPointColor; visifireDataPoint.ShowInLegend = dataPoint.ShowInLegend; visifireDataPoint.LegendText = dataPoint.LegendText; visifireDataPoint.Title = dataPoint.Title; visifireDataPoint.XAxisValue = dataPoint.XAxisValue; visifireDataPoint.XAxisLabel = dataPoint.XAxisLabel; visifireDataPoint.XAxisFieldName = dataPoint.XAxisFieldName; visifireDataPoint.ZAxisFieldName = dataPoint.ZAxisFieldName; visifireDataPoint.YAxisFieldName = dataPoint.YAxisFieldName; visifireDataPoint.YAxisLabel = dataPoint.YAxisLabel; visifireDataPoint.ZAxisLabel = dataPoint.ZAxisLabel; visifireChartSeries.Add(visifireDataPoint); } visifireChartSeriesList.Add(visifireChartSeries); } return(visifireChartSeriesList); }
//TODO: BuildSeries2 does the series building for a non bubble chart. Refactor so that its modular for all chart types. private IEnumerable <VfChartSeries> BuildSeriesArrayForBubbleChart() { var aggregate = EpmChartAggregateType.Sum; var hasZAxis = !PropChartZaxisField.Contains("None Selected"); var hasZAxisColor = !PropBubbleChartColorField.Contains("None Selected"); var zAxisFieldName = hasZAxis ? PropChartZaxisField : ""; var bubbleChartColumnMapping = GetBubbleChartColumnMappings(); var currentList = SPContext.Current.Web.Lists[PropChartSelectedList]; SPField xAxisField = null; SPField yAxisField = null; SPField zAxisField = null; if (currentList != null) { xAxisField = currentList.Fields.GetFieldByInternalName(PropChartXaxisField); yAxisField = currentList.Fields.GetFieldByInternalName(PropChartYaxisField); zAxisField = currentList.Fields.GetFieldByInternalName(PropChartZaxisField); } var epmChartDataSeriesList = new EpmChartDataSeriesList(dtSPSiteDataQueryData, aggregate, xAxisField, yAxisField, zAxisField, hasZAxis, hasZAxisColor, bubbleChartColumnMapping); return(EpmChartSeriesToVisifireChartSeriesMapper.GetVisifireChartSeries(epmChartDataSeriesList)); }