protected override Image DoCreateChartImage() { var radChart = new RadChart {Width = Parameters.ChartWidth, Height = Parameters.ChartHeight}; var tmpSeries = new ChartSeries() { Type = ChartSeriesType.Line }; foreach (var point in Parameters.SeriaData) tmpSeries.Items.Add(new ChartSeriesItem(point.Key, point.Value)); radChart.AddChartSeries(tmpSeries); return radChart.GetBitmap(); }
protected override void CreateChildControls() { string[] colors = { "#FFDA43", "#2F89C2", "#F267CD", "#79E364", "#EB5D2D", "#42AE18", "#FF9C40", "#B99A72", "#9BC0FF", "#98CC88", "#C3B600" }; chart = new RadChart(); chart.UseSession = false; chart.TempImagesFolder = "~/_layouts/temp"; chart.RadControlsDir = "~/_layouts/radcontrols/RadControls/"; ChartSeries chartSeries = new ChartSeries(); chart.AddChartSeries(chartSeries); ChartTitle title = new ChartTitle(); ChartSeries series = chart.GetChartSeries(0); series.Name = surveyQuestion; chart.Legend.HAlignment = ChartHAlignment.Center; chart.Legend.VAlignment = ChartVAlignment.Bottom; chart.Legend.LegendStyle = LegendItemsPositionType.Row; response = GetSurveyResponse("http://server/sites/techresources/", "http://server/sites/techresources/Lists/Survey2"); title.Text = surveyQuestion; title.TextFont = new Font("Verdana", 7); chart.Chart.ChartTitle = title; series.Clear(); series.DiameterScale = 0.40; series.ShowLabelConnectors = false; series.ShowLabels = true; series.LabelAppearance.Distance = 7; series.LabelAppearance.TextFont = new Font("Verdana", 7); series.NotOverlapLabels = true; series.Type = ChartSeriesType.Pie; ColorConverter cc = new ColorConverter(); int i = 0; foreach (Response res in response) { ChartSeriesItem seriesItem = new ChartSeriesItem(); seriesItem.YValue = res.totalResponse; seriesItem.ItemMap.ToolTip = res.choiceName; seriesItem.Label = res.totalResponse.ToString(); seriesItem.Appearance.MainColor = (Color)cc.ConvertFromString(colors[i++]); seriesItem.Appearance.BorderColor = Color.DimGray; seriesItem.Appearance.FillStyle = FillStyle.Solid; seriesItem.Name = res.choiceName; series.Items.Add(seriesItem); } chart.Skin = "LightGreen"; this.Controls.Add(chart); }