mahboob Posted June 26, 2007 Report Share Posted June 26, 2007 Problem is that on everytime X-axis value is incresses. mean also in Datagrid Column heading too if i have one value Mathmatics on every time it incressess (Mathmatics,Mathmatics) as shown on file i attached Link to comment Share on other sites More sharing options...
Frank Posted June 26, 2007 Report Share Posted June 26, 2007 Please post the code/data that produced this chart. Link to comment Share on other sites More sharing options...
mahboob Posted June 27, 2007 Author Report Share Posted June 27, 2007 Hi i send to Code Data size is big so that is not possible private void TemplateBar(DataSet ds, string strCDS, int ChildMenuID, int ChartNo, string Path) { DataView myView = new DataView(); ChartFX.WebForms. Chart objChart = new ChartFX.WebForms.Chart();CheckBox chk = new CheckBox(); Literal litSpace = new Literal();chk.ID = Path.Replace("/", ""); chk.Text = " Select";chk.Visible = false;litSpace.Text = " </Br> </Br> </Br>"; objChart.Width = 850; objChart.Height = 550; try{ // Setting File Path // Path = SettingFilePath(strCDS, Server.MapPath("../Charts/") + Path + "/");phChart.Controls.Add(chk); phChart.Controls.Add(objChart); phChart.Controls.Add(litSpace); if (File.Exists(Path + "/" + strCDS + ".chw")) {objChart.Import(ChartFX.WebForms.FileFormat.Binary, Path + "/" + strCDS + ".chw");objChart.Visible = true; } else{ // Setting ToolBoxChartsConfiguration.AddToolBox(objChart, true); // Setting LegendBoxChartsConfiguration.SetLegendsBox(objChart, false); // Chart TypeobjChart.Gallery = Gallery.Bar;objChart.RenderFormat = ConfigurationSettings.AppSettings["ChartRenderFormat"]; // Check Data Avaible or not if (ds.Tables.Count > 0) { if (ds.Tables[ChartNo].Rows.Count > 0) {myView = new DataView(ds.Tables[ChartNo]);if (myView.Count > 0) { DataView objView = ConfigureStudentNoForBarChart(myView); objProDv.DataView = objView; cfxCT.DataSource = objProDv;objChart.Visible = true;objChart.Titles.Add(new TitleDockable()); objChart.Titles[0].Text = ds.Tables[ChartNo].Rows[0][ "Heading1"].ToString() + " \n " + ds.Tables[ChartNo].Rows[0]["Heading2"].ToString() + " \n " + ds.Tables[ChartNo].Rows[0]["Heading3"].ToString() + " \n ";objChart.Titles[0].Font = new System.Drawing.Font("Arial", 10, FontStyle.Bold); objChart.DataSourceSettings.Fields.Add( new FieldMap("Dim1", FieldUsage.ColumnHeading));objChart.DataSourceSettings.Fields.Add(new FieldMap("Dim2", FieldUsage.RowHeading));objChart.DataSourceSettings.Fields.Add(new FieldMap("Pct_Data", FieldUsage.Value)); objChart.DataSource = cfxCT;objChart.DataGrid.Visible = true; objChart.DataGrid.ShowHiddenSeries = true;objChart.DataGrid.ContentLayout = ContentLayout.Center; objChart.DataGrid.MaxSizePercentage = 100; if (objChart.Series.Count - 1 >= 0) {objChart.Series[0].Text = objChart.Series[0].Text.Remove(0, 1) + " %"; objChart.Series[1].Visible = false;objChart.Series[1].Text = objChart.Series[0].Text.Replace('%', ' ') + "#"; objChart.Series[1].AxisY = objChart.AxisY2;objChart.DataGrid.Cells[1].BackColor = ChartsConfiguration.SetColorForNoofStudentsRow(); } if (objChart.Series.Count - 1 >= 3) {objChart.Series[2].Text = objChart.Series[2].Text.Remove(0, 1) + " %"; objChart.Series[3].Visible = false;objChart.Series[3].Text = objChart.Series[2].Text.Replace('%', ' ') + "#"; objChart.Series[3].AxisY = objChart.AxisY2;objChart.DataGrid.Cells[3].BackColor = ChartsConfiguration.SetColorForNoofStudentsRow(); } if (objChart.Series.Count - 1 >= 5) {objChart.Series[4].Text = objChart.Series[4].Text.Remove(0, 1) + " %"; objChart.Series[5].Visible = false;objChart.Series[5].Text = objChart.Series[4].Text.Replace('%', ' ') + "#"; objChart.Series[5].AxisY = objChart.AxisY2;objChart.DataGrid.Cells[5].BackColor = ChartsConfiguration.SetColorForNoofStudentsRow(); } // Set Colorif (ds.Tables[ChartNo].Rows[0]["ChartID"].ToString().IndexOf("ENTITY") > -1) { ChartsConfiguration.SetColorOnEntityCharts(objChart); } else if (ds.Tables[ChartNo].Rows[0]["ChartID"].ToString().IndexOf("YEAR") > -1) { ChartsConfiguration.SetColorOnYearCharts(objChart); } if (((ChartFX.WebForms.DataProviders.DataViewProvider)(cfxCT.DataSource)).DataView.Count / 3 >= 7) { objChart.AllSeries.Volume = 60; } else if (((ChartFX.WebForms.DataProviders.DataViewProvider)(cfxCT.DataSource)).DataView.Count / 3 >= 6) { objChart.AllSeries.Volume = 50; } else if (((ChartFX.WebForms.DataProviders.DataViewProvider)(cfxCT.DataSource)).DataView.Count / 3 >= 4) { objChart.AllSeries.Volume = 30; } else if (((ChartFX.WebForms.DataProviders.DataViewProvider)(cfxCT.DataSource)).DataView.Count / 3 >= 3) { objChart.AllSeries.Volume = 50; } else if (((ChartFX.WebForms.DataProviders.DataViewProvider)(cfxCT.DataSource)).DataView.Count / 3 >= 2) { objChart.AllSeries.Volume = 20; } else{ objChart.AllSeries.Volume = 10; } // Bar TextobjChart.AllSeries.PointLabels.Font = new Font("Arial", 8, FontStyle.Bold); objChart.AllSeries.PointLabels.Visible = false;objChart.AxisY.Title.Text = ds.Tables[ChartNo].Rows[0]["YaxisLabel"].ToString(); //objChart.AxisX.Title.Text = "\n Number of Fitness Standards Achieved \n";objChart.AxisX.Title.Font = new Font("Arial", 9, FontStyle.Bold); objChart.AxisX.LabelAngle = 0;objChart.AxisY.Title.Font = new Font("verdana", 8, FontStyle.Bold); objChart.AxisX.Font = new Font("Arial", 8, FontStyle.Bold);objChart.AxisY.Font = new Font("Arial", 8, FontStyle.Bold); objChart.DataGrid.Font = new Font("Arial", 8, FontStyle.Bold); // ScaleingobjChart.AxisY.Min = 0; objChart.AxisY.Step = .2; objChart.AxisY.Max = 1;objChart.AxisY.DataFormat.CustomFormat = "P0"; objChart.AxisY.LabelsFormat.CustomFormat = "P0";objChart.AxisY2.DataFormat.Format = AxisFormat.Number;objChart.AxisY2.LabelsFormat.Format = AxisFormat.Number; // Export to PNG // objChart.Export(FileFormat.Bitmap, Path + "/" + strCDS + ".png"); // Export to Binary // objChart.Export(ChartFX.WebForms.FileFormat.Binary, Path + "/" + strCDS + ".chw");} else{objChart.Visible = false;chk.Visible = false; } } else{objChart.Visible = false;chk.Visible = false; } } else{objChart.Visible = false;chk.Visible = false; } } } catch (Exception ex) {objChart.Visible = false;chk.Visible = false; Response.Write(ex.Message); } finally { } } Link to comment Share on other sites More sharing options...
Frank Posted June 28, 2007 Report Share Posted June 28, 2007 After importing the chart, the state will be the same as it was when it was exported. In particular the fields collection would be whatever it was at that time. Since you are doing: objChart.DataSourceSettings.Fields.Add(new FieldMap("Dim1", FieldUsage.ColumnHeading)); And not clearing the fields collection, you are in fact adding more fields to it, hence producing the repetitions. Add the following to your code; objChart.DataSourceSettings.Fields.Clear(); Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.