نقل قول: ترسيم چارت با چندین ستون
تو چارت، میتونی Series های مختلفی ( نمودار های مختلفی ) ایجاد کنی و رنگ و خصوصیات هر کدوم رو جداگونه تنظیم کنی ( فقط باید نوع چارت همشون رو میله ای تعریف کنی ) و در آخر اضافشون کنی به Chart، و به هر کدوم داده مخصوص به خودشو بدی، حالا نمیدونم اون وقفه ای که چارت رو بروز رسانی میکنه، همونجا میتونی بیای بگی داده رو به چارت هم اضافه کنه،
این از کد تعریف 2 تا series و دادن به چارت مربوطه :
#region init series1 [ Reference ]
Series series1 = chart_PrintError.Series.Add("Reference");
series1.IsValueShownAsLabel = false;
series1.IsVisibleInLegend = false;
series1.ChartType = SeriesChartType.FastLine;
series1.Color = Color.Black;
series1.BorderWidth = 2;
series1.MarkerSize = 8;
series1.MarkerStyle = MarkerStyle.Circle;
series1.MarkerColor = Color.White;
series1.MarkerBorderWidth = 2;
series1.MarkerBorderColor = Color.Black;
#endregion
#region init series2 [ Normal ]
Series series2 = chart_PrintError.Series.Add("Normal");
series2.IsValueShownAsLabel = false;
series2.IsVisibleInLegend = false;
series2.ChartType = SeriesChartType.FastLine;
series2.Color = Color.Blue;
series2.BorderWidth = 2;
series2.MarkerSize = 8;
series2.MarkerStyle = MarkerStyle.Circle;
series2.MarkerColor = Color.White;
series2.MarkerBorderWidth = 2;
series2.MarkerBorderColor = Color.Blue;
#endregion
اینم از نمونه کد اضافه کردن داده به Series مدنظر :
series1.Points.AddXY(Angle, DDM);
نقل قول: ترسيم چارت با چندین ستون
با سلام
طبق جدولی که دارم برای هر کالایی یک Series تعریف کردم و این کد رو نوشتم ولی خروجی مشکل داره برای هر کالایی تو هر ماه تکرار میشه:
for (int i = 0; i < this.dgvStatistics.RowCount; i++)
{
chartShahrsazi.Series["A"].Points.AddXY(this.dgvStatistics.Rows[i].Cells[0].Value.ToString(), this.dgvStatistics.Rows[i].Cells[2].Value.ToString());
chartShahrsazi.Series["B"].Points.AddXY(this.dgvStatistics.Rows[i].Cells[0].Value.ToString(), this.dgvStatistics.Rows[i].Cells[2].Value.ToString());
chartShahrsazi.Series["C"].Points.AddXY(this.dgvStatistics.Rows[i].Cells[0].Value.ToString(), this.dgvStatistics.Rows[i].Cells[2].Value.ToString());
chartShahrsazi.Series["D"].Points.AddXY(this.dgvStatistics.Rows[i].Cells[0].Value.ToString(), this.dgvStatistics.Rows[i].Cells[2].Value.ToString());
chartShahrsazi.Series["E"].Points.AddXY(this.dgvStatistics.Rows[i].Cells[0].Value.ToString(), this.dgvStatistics.Rows[i].Cells[2].Value.ToString());
}
نقل قول: ترسيم چارت با چندین ستون
با سلام
درستش کردم. با توجه به اینکه باید بر اساس جدولی که نتیجه گزارش رو میاورد چارت رو پر می کردم باید تو حلقه شرط می گداشتم:
if("A")
chartShahrsazi.Series["A"].Points.AddXY(this.dgvStatistics.Rows[i].Cells[0].Value.ToString(), this.dgvStatistics.Rows[i].Cells[2].Value.ToString());
if("B")
chartShahrsazi.Series["B"].Points.AddXY(this.dgvStatistics.Rows[i].Cells[0].Value.ToString(), this.dgvStatistics.Rows[i].Cells[2].Value.ToString());
.
.
.