protected void Page_Load(object sender, EventArgs e) { try { Sesion Sesion = new Sesion(); Sesion = (Sesion)Session["Sesion" + Session.SessionID]; List <CobSaldosNiveles> Lista = new List <CobSaldosNiveles>(); PieSeriesItem si; CN_ClientesMayorAdeudo.RegresaCuentasPorPagadas(Sesion.Fecha_Cierre, Sesion.Dias_Revision, Sesion.Id_Cte, Sesion.Emp_Cnx, ref Lista); int i = 1; float carteratotal = 0, varporcentaje = 0; DonutSeries ds = new DonutSeries(); foreach (CobSaldosNiveles saldo in Lista) { carteratotal = carteratotal + saldo.Restante; } foreach (CobSaldosNiveles saldo in Lista) { datos = saldo; varporcentaje = (saldo.Restante * 100) / carteratotal; si = new PieSeriesItem(Math.Round((decimal)saldo.Restante, 3), Regresacolor(saldo.Cdi), (saldo.Cdi + " - " + saldo.Cd_Nombre) + ' ' + Math.Round(varporcentaje, 1).ToString() + " %"); ds.SeriesItems.Add(si); i++; } Random randObj = new Random(DateTime.Now.Millisecond); HF_Cve.Value = randObj.Next().ToString(); RcGrafica.ChartTitle.Text = Sesion.Cte_Nombre + " Pendiente por cobrar " + carteratotal.ToString("C2"); ds.LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.PieLabelsPosition.Column; ds.LabelsAppearance.DataFormatString = "{0:N2}"; ds.TooltipsAppearance.Visible = true; ds.TooltipsAppearance.DataFormatString = "{0}"; RcGrafica.PlotArea.Series.Add(ds); RcGrafica.DataBind(); } catch (Exception ex) { throw ex; } }
//protected void BarChartInit() //{ // barDivChart.Visible = true; // List<ItemStorageVO> itemStorageList = dh.GetStorage(); // List<ItemVO> itemList = dh.GetItems(); // List<Object> dataSource = new List<object>(); // foreach (ItemVO item in itemList) // { // item.inventories = itemStorageList.FindAll(delegate(ItemStorageVO isvo) { return isvo.Item_ID.Equals(item.Item_ID) && isvo.Quantity < 0; }).Sum(delegate(ItemStorageVO isvo) { return isvo.Quantity; }) * -1; // item.intos = itemStorageList.FindAll(delegate(ItemStorageVO isvo) { return isvo.Item_ID.Equals(item.Item_ID) && isvo.Quantity > 0; }).Sum(delegate(ItemStorageVO isvo) { return isvo.Quantity; }); // dataSource.Add(new { Value1 = item.intos, Value2 = item.inventories, Item = item.Item_Name }); // } // BarChart.DataSource = dataSource; // BarChart.DataBind(); //} protected void InitPage() { pieChart.Visible = true; List <DepartmentVO> deptList = dh.GetDepartmentStaffCount(account.Company_ID); PieSeries pieSeries = (PieSeries)PieChart1.PlotArea.Series[0]; int i = 0; foreach (DepartmentVO depart in deptList) { PieSeriesItem psItem = new PieSeriesItem(); psItem.Name = depart.Department_Name; psItem.Y = depart.Staff_Count; psItem.BackgroundColor = GetColor(i); psItem.Exploded = false; pieSeries.SeriesItems.Add(psItem); i++; } }
protected void Page_Load(object sender, EventArgs e) { double PorPagar = 0, varPorPagar = 0, Pagado = 0, varPagado = 0; try { Sesion Sesion = new Sesion(); Sesion = (Sesion)Session["Sesion" + Session.SessionID]; Sesion.Id_Cte = int.Parse(Request.QueryString["Id_Cte"]); Sesion.Cte_Nombre = Request.QueryString["Cte_Nombre"]; CN_ClientesMayorAdeudo.RegresaAdeudoCliente(Sesion.Fecha_Cierre, Sesion.Fecha_Corte, Sesion.Dias_Revision, Sesion.Id_Cte, Sesion.Emp_Cnx, ref PorPagar, ref Pagado); double total = PorPagar + Pagado; varPorPagar = (PorPagar * 100) / total; varPagado = (Pagado * 100) / total; PieSeriesItem s1 = new PieSeriesItem(Math.Round((decimal)PorPagar, 3), System.Drawing.Color.Red, "Por Cobrar " + Math.Round(varPorPagar, 1).ToString() + "%", false); PieSeriesItem s2 = new PieSeriesItem(Math.Round((decimal)Pagado, 3), System.Drawing.Color.Green, "Cobrado " + Math.Round(varPagado, 1).ToString() + "%", true); DonutSeries ds = new DonutSeries(); ds.SeriesItems.Add(s1); ds.SeriesItems.Add(s2); ds.LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.PieLabelsPosition.Circle; RcGrafica.ChartTitle.Text = Sesion.Cte_Nombre + " " + total.ToString("C2"); ds.LabelsAppearance.DataFormatString = "{0:N2}"; ds.TooltipsAppearance.Visible = true; ds.TooltipsAppearance.DataFormatString = "{0:N2}"; RcGrafica.PlotArea.Series.Add(ds); RcGrafica.DataBind(); } catch (Exception ex) { throw ex; } }
public void CreateChart(Panel BasePanel, ChartType chartType, DataTable dt, string[] ColorName, int yMaxValue = 100, int gridSetps = 20, bool isGroup = false) { switch (chartType) { case ChartType.BarChartHorizontal: radChart.Skin = "Bootstrap"; radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default; radChart.PlotArea.YAxis.MaxValue = yMaxValue; //radChart.PlotArea.XAxis.Step = 30; radChart.PlotArea.YAxis.Step = 20; BarSeries[] CBS = new BarSeries[dt.Columns.Count - 1]; for (int i = 0; i < dt.Columns.Count - 1; i++) { CBS[i] = new BarSeries(); CBS[i].Name = dt.Columns[i + 1].ColumnName; if (isGroup) { CBS[i].GroupName = " "; } CBS[i].LabelsAppearance.Visible = true; CBS[i].TooltipsAppearance.Color = System.Drawing.Color.White; CBS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.BarColumnLabelsPosition.OutsideEnd; } foreach (DataRow row in dt.Rows) { for (int i = 0; i < dt.Columns.Count - 1; i++) { CBS[i].SeriesItems.Add(new CategorySeriesItem((decimal)row[i + 1])); } radChart.PlotArea.XAxis.Items.Add(row[0].ToString()); } foreach (BarSeries item in CBS) { radChart.PlotArea.Series.Add(item); } break; case ChartType.BarChartHorizontalDA: radChart.Skin = "Bootstrap"; radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default; BarSeries[] BS = new BarSeries[dt.Columns.Count - 1]; for (int i = 0; i < dt.Columns.Count - 1; i++) { BS[i] = new BarSeries(); BS[i].Name = dt.Columns[i + 1].ColumnName; BS[i].LabelsAppearance.Visible = true; BS[i].TooltipsAppearance.Color = System.Drawing.Color.White; BS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.BarColumnLabelsPosition.OutsideEnd; } int j = 0; foreach (DataRow row in dt.Rows) { for (int i = 0; i < dt.Columns.Count - 1; i++) { BS[i].SeriesItems.Add(new CategorySeriesItem((decimal)row[i + 1], Color.FromName(ColorName[j].ToString()))); radChart.PlotArea.XAxis.Items.Add(row[0].ToString()); } j++; } foreach (BarSeries item in BS) { radChart.PlotArea.Series.Add(item); } break; case ChartType.BarChartVartical: radChart.Skin = "Bootstrap"; radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default; radChart.PlotArea.YAxis.MaxValue = yMaxValue; radChart.PlotArea.XAxis.Step = gridSetps; radChart.PlotArea.YAxis.Step = gridSetps; radChart.PlotArea.XAxis.LabelsAppearance.RotationAngle = 0; //-45; ColumnSeries[] CCS = new ColumnSeries[dt.Columns.Count - 1]; for (int i = 0; i < dt.Columns.Count - 1; i++) { CCS[i] = new ColumnSeries(); CCS[i].Name = dt.Columns[i + 1].ColumnName; if (isGroup) { CCS[i].GroupName = " "; } CCS[i].LabelsAppearance.Visible = true; CCS[i].TooltipsAppearance.Color = System.Drawing.Color.White; CCS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.BarColumnLabelsPosition.OutsideEnd; } foreach (DataRow row in dt.Rows) { for (int i = 0; i < dt.Columns.Count - 1; i++) { CCS[i].SeriesItems.Add(new CategorySeriesItem((decimal)row[i + 1])); } radChart.PlotArea.XAxis.Items.Add(row[0].ToString()); } foreach (ColumnSeries item in CCS) { radChart.PlotArea.Series.Add(item); } break; case ChartType.PieChart: radChart.Skin = "Silk"; //"Bootstrap"; radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default; PieSeries PS = new PieSeries(); PS.Name = "PieSeries1"; PS.StartAngle = 90; PS.LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.PieAndDonutLabelsPosition.Center; PS.LabelsAppearance.Visible = true; PS.TooltipsAppearance.Color = System.Drawing.Color.White; int iX = 0; bool IsExploded = true; foreach (DataRow row in dt.Rows) { PieSeriesItem psi = new PieSeriesItem(); psi.Name = row[0].ToString(); psi.Y = (decimal)row[1]; psi.BackgroundColor = Color.FromName(ColorName[iX].ToString()); if (IsExploded) { psi.Exploded = IsExploded; IsExploded = false; } PS.SeriesItems.Add(psi); iX++; } radChart.PlotArea.Series.Add(PS); break; case ChartType.LineChart: radChart.Skin = "Bootstrap"; radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default; LineSeries[] CLS = new LineSeries[dt.Columns.Count - 1]; for (int i = 0; i < dt.Columns.Count - 1; i++) { CLS[i] = new LineSeries(); CLS[i].Name = dt.Columns[i + 1].ColumnName; CLS[i].LabelsAppearance.Visible = true; CLS[i].TooltipsAppearance.Color = System.Drawing.Color.White; CLS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.LineAndScatterLabelsPosition.Above; } foreach (DataRow row in dt.Rows) { for (int i = 0; i < dt.Columns.Count - 1; i++) { CLS[i].SeriesItems.Add(new CategorySeriesItem((decimal)row[i + 1])); } radChart.PlotArea.XAxis.Items.Add(row[0].ToString()); } foreach (LineSeries item in CLS) { radChart.PlotArea.Series.Add(item); } break; case ChartType.AreaChart: radChart.Skin = "Bootstrap"; radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default; AreaSeries[] CAS = new AreaSeries[dt.Columns.Count - 1]; for (int i = 0; i < dt.Columns.Count - 1; i++) { CAS[i] = new AreaSeries(); CAS[i].Name = dt.Columns[i + 1].ColumnName; CAS[i].LabelsAppearance.Visible = false; CAS[i].TooltipsAppearance.Color = System.Drawing.Color.White; CAS[i].Appearance.FillStyle.BackgroundColor = Color.FromName(ColorName[i]); } foreach (DataRow row in dt.Rows) { for (int i = 0; i < dt.Columns.Count - 1; i++) { CAS[i].SeriesItems.Add(new CategorySeriesItem((decimal)row[i + 1])); } radChart.PlotArea.XAxis.Items.Add(row[0].ToString()); } foreach (AreaSeries item in CAS) { radChart.PlotArea.Series.Add(item); } break; default: break; } BasePanel.Controls.Add(radChart); }
public void CreateChart(Panel BasePanel, ChartType chartType, DataTable dt, string[] ColorName) { switch (chartType) { case ChartType.BarChartHorizontal: radChart.Skin = "Silk"; radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default; BarSeries[] CBS = new BarSeries[dt.Columns.Count - 1]; for (int i = 0; i < dt.Columns.Count - 1 ; i++) { CBS[i] = new BarSeries(); CBS[i].Name = dt.Columns[i + 1].ColumnName; CBS[i].LabelsAppearance.Visible = true; CBS[i].TooltipsAppearance.Color = System.Drawing.Color.White; CBS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.BarColumnLabelsPosition.OutsideEnd; } foreach (DataRow row in dt.Rows) { for (int i = 0; i < dt.Columns.Count - 1; i++) { CBS[i].SeriesItems.Add(new CategorySeriesItem((Int64)row[i + 1])); radChart.PlotArea.XAxis.Items.Add(row[0].ToString()); } } foreach (BarSeries item in CBS) { radChart.PlotArea.Series.Add(item); } break; case ChartType.BarChartHorizontalDA: radChart.Skin = "Silk"; radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default; BarSeries[] BS = new BarSeries[dt.Columns.Count - 1]; for (int i = 0; i < dt.Columns.Count - 1; i++) { BS[i] = new BarSeries(); BS[i].Name = dt.Columns[i + 1].ColumnName; BS[i].LabelsAppearance.Visible = true; BS[i].TooltipsAppearance.Color = System.Drawing.Color.White; BS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.BarColumnLabelsPosition.OutsideEnd; } int j = 0; foreach (DataRow row in dt.Rows) { for (int i = 0; i < dt.Columns.Count - 1; i++) { BS[i].SeriesItems.Add(new CategorySeriesItem((Int64)row[i + 1])); //BS[i].Appearance.FillStyle.BackgroundColor = Color.FromName(ColorName[j]); radChart.PlotArea.XAxis.Items.Add(row[0].ToString()); } j++; } //for (int i = 0; i < ColorName.Length - 1; i++) //{ // BS[0]. // //BS[0].Appearance.FillStyle.BackgroundColor = Color.FromName(color); //} //for (int i = 0; i < ColorName.Length - 1; i++) //{ // CBS..Appearance.FillStyle.BackgroundColor = Color.FromName(ColorName[i].ToString()); //} foreach (BarSeries item in BS) { radChart.PlotArea.Series.Add(item); } break; case ChartType.BarChartVartical: radChart.Skin = "Silk"; radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default; //radChart.PlotArea.XAxis.LabelsAppearance.RotationAngle = -90; ColumnSeries[] CCS = new ColumnSeries[dt.Columns.Count - 1]; for (int i = 0; i < dt.Columns.Count - 1 ; i++) { CCS[i] = new ColumnSeries(); CCS[i].Name = dt.Columns[i + 1].ColumnName; CCS[i].LabelsAppearance.Visible = true; CCS[i].TooltipsAppearance.Color = System.Drawing.Color.White; CCS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.BarColumnLabelsPosition.OutsideEnd; } foreach (DataRow row in dt.Rows) { for (int i = 0; i < dt.Columns.Count - 1; i++) CCS[i].SeriesItems.Add(new CategorySeriesItem((Int64)row[i + 1])); radChart.PlotArea.XAxis.Items.Add(row[0].ToString()); } foreach (ColumnSeries item in CCS) { radChart.PlotArea.Series.Add(item); } break; case ChartType.PieChart: radChart.Skin = "Silk"; radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default; PieSeries PS = new PieSeries(); PS.Name = "PieSeries1"; PS.StartAngle = 90; PS.LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.PieAndDonutLabelsPosition.Center; PS.LabelsAppearance.Visible = true; PS.TooltipsAppearance.Color = System.Drawing.Color.White; bool IsExploded = true; foreach (DataRow row in dt.Rows) { PieSeriesItem psi = new PieSeriesItem(); psi.Name = row[0].ToString(); psi.Y = (Int64)row[1]; if (IsExploded) { psi.Exploded = IsExploded; IsExploded = false; } PS.SeriesItems.Add(psi); } radChart.PlotArea.Series.Add(PS); break; case ChartType.LineChart: radChart.Skin = "Silk"; radChart.Layout = Telerik.Web.UI.HtmlChart.ChartLayout.Default; LineSeries[] CLS = new LineSeries[dt.Columns.Count - 1]; for (int i = 0; i < dt.Columns.Count - 1 ; i++) { CLS[i] = new LineSeries(); CLS[i].Name = dt.Columns[i + 1].ColumnName; CLS[i].LabelsAppearance.Visible = true; CLS[i].TooltipsAppearance.Color = System.Drawing.Color.White; CLS[i].LabelsAppearance.Position = Telerik.Web.UI.HtmlChart.LineAndScatterLabelsPosition.Above; } foreach (DataRow row in dt.Rows) { for (int i = 0; i < dt.Columns.Count - 1; i++) CLS[i].SeriesItems.Add(new CategorySeriesItem((Int64)row[i + 1])); radChart.PlotArea.XAxis.Items.Add(row[0].ToString()); } foreach (LineSeries item in CLS) radChart.PlotArea.Series.Add(item); break; case ChartType.AreaChart: AreaSeries[] CAS = new AreaSeries[dt.Columns.Count - 1]; for (int i = 0; i < dt.Columns.Count - 1 ; i++) { CAS[i] = new AreaSeries(); CAS[i].Name = dt.Columns[i + 1].ColumnName; CAS[i].LabelsAppearance.Visible = false; CAS[i].TooltipsAppearance.Color = System.Drawing.Color.White; CAS[i].Appearance.FillStyle.BackgroundColor = Color.FromName(ColorName[i]); } foreach (DataRow row in dt.Rows) { for (int i = 0; i < dt.Columns.Count - 1; i++) CAS[i].SeriesItems.Add(new CategorySeriesItem((Int64)row[i + 1])); radChart.PlotArea.XAxis.Items.Add(row[0].ToString()); } foreach (AreaSeries item in CAS) radChart.PlotArea.Series.Add(item); break; default: break; } BasePanel.Controls.Add(radChart); }
private void CrearPie(List <USP_SEL_LetrasSinCanjeV2Result> lstletras) { decimal Total = (decimal)lstletras.Sum(x => x.Saldo); var lstplazos = from p in lstletras group p by new { p.TipoPlazo } into g select new { TipoPlazo = g.Key.TipoPlazo, Cantidad = g.Sum(x => x.Saldo) }; RadHtmlChart scatterChart = new RadHtmlChart(); scatterChart.ID = "ScatterChart"; scatterChart.Width = Unit.Pixel(680); scatterChart.Height = Unit.Pixel(500); scatterChart.Legend.Appearance.Position = Telerik.Web.UI.HtmlChart.ChartLegendPosition.Bottom; scatterChart.PlotArea.XAxis.TitleAppearance.Text = "Plazos"; scatterChart.PlotArea.YAxis.TitleAppearance.Text = "Plazos"; //ScatterLineSeries theoreticalData = new ScatterLineSeries(); //theoreticalData.Name = "Theoretical Data"; //theoreticalData.LabelsAppearance.Visible = false; //theoreticalData.TooltipsAppearance.Color = System.Drawing.Color.White; //theoreticalData.TooltipsAppearance.DataFormatString = "{0} Volts, {1} mA"; PieSeries serieY = new PieSeries(); serieY.Name = "Plazo"; serieY.LabelsAppearance.Visible = true; serieY.LabelsAppearance.DataFormatString = "{0}%"; serieY.TooltipsAppearance.Color = System.Drawing.Color.White; serieY.TooltipsAppearance.DataFormatString = "{0}%"; //serieY.TooltipsAppearance.ClientTemplate = "#=category#"; PieSeriesItem psitem = new PieSeriesItem(); foreach (var Eplazo in lstplazos) { psitem = new PieSeriesItem(Math.Round(((((decimal)Eplazo.Cantidad) / Total) * 100), 2)); //psitem.Name = Eplazo.TipoPlazo; psitem.Name = string.Format("{0}: Saldo Total: ${1}, Cantidad Letras: " + lstletras.Where(x => x.TipoPlazo == Eplazo.TipoPlazo).Count(), Eplazo.TipoPlazo, Math.Round(((decimal)Eplazo.Cantidad), 2).ToString("#,##0.00")); if (Eplazo.TipoPlazo == "1 a " + txtCantidadDias.Text.Trim() + " Días") { psitem.BackgroundColor = System.Drawing.Color.DarkOrange; } else if (Eplazo.TipoPlazo == "Mayor a " + txtCantidadDias.Text.Trim() + " Días") { psitem.BackgroundColor = System.Drawing.Color.Red; } serieY.SeriesItems.Add(psitem); } scatterChart.PlotArea.Series.Add(serieY); paneltorta.Controls.Add(scatterChart); }