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();
 }
Exemple #2
0
        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);
        }