private void Startbutton_Click(object sender, EventArgs e) { Spiel sp = new Spiel(_leiterschlangen.ToList()); var statistik = sp.Spielen((int)anzSimulationennumericUpDown.Value); label4.Text = statistik.DurchschnittWürfe.ToString(); label5.Text = statistik.MinWürfe.ToString(); label6.Text = statistik.MaxWürfe.ToString(); chart1.Annotations.Clear(); //Durschschnitt try { VerticalLineAnnotation va = new VerticalLineAnnotation(); ChartArea ca = chartSimulation.ChartAreas[0]; Series s1 = chartSimulation.Series[0]; va.AxisX = ca.AxisX; //va.AllowMoving = true; va.IsInfinitive = true; va.ClipToChartArea = ca.Name; va.Name = "Sim Durchschnitt"; va.LineColor = Color.Red; va.LineWidth = 2; va.X = (int)statistik.DurchschnittWürfe; chartSimulation.Annotations.Add(va); ErgebnisMatrixdgv.Rows[(int)statistik.DurchschnittWürfe - 1].DefaultCellStyle.BackColor = Color.Red; } catch (Exception ex) { } //Minimum try { VerticalLineAnnotation va = new VerticalLineAnnotation(); ChartArea ca = chartSimulation.ChartAreas[0]; Series s1 = chartSimulation.Series[0]; va.AxisX = ca.AxisX; //va.AllowMoving = true; va.IsInfinitive = true; va.ClipToChartArea = ca.Name; va.Name = "Sim Minimum"; va.LineColor = Color.Blue; va.LineWidth = 2; va.X = (int)statistik.MinWürfe; chartSimulation.Annotations.Add(va); ErgebnisMatrixdgv.Rows[(int)statistik.MinWürfe - 1].DefaultCellStyle.BackColor = Color.DeepSkyBlue; } catch (Exception) { } //Maximum try { VerticalLineAnnotation va = new VerticalLineAnnotation(); ChartArea ca = chartSimulation.ChartAreas[0]; Series s1 = chartSimulation.Series[0]; va.AxisX = ca.AxisX; //va.AllowMoving = true; va.IsInfinitive = true; va.ClipToChartArea = ca.Name; va.Name = "Sim Maximum"; va.LineColor = Color.Green; va.LineWidth = 2; va.X = (int)statistik.MaxWürfe; chartSimulation.Annotations.Add(va); ErgebnisMatrixdgv.Rows[(int)statistik.MaxWürfe - 1].DefaultCellStyle.BackColor = Color.LawnGreen; } catch (Exception) { } //ChartSimulation chartSimulation.Series[0].Points.Clear(); for (int i = 0; i < statistik.Würfe.Length; i++) { chartSimulation.Series[0].Points.AddY(statistik.Würfe[i] / (decimal)statistik.GesammtSpiele); } chartSimulation.Series[1].Points.Clear(); int[] value = new int[statistik.Würfe.Length]; decimal gesammt = 0; for (int i = 0; i < statistik.Würfe.Length; i++) { gesammt += statistik.Würfe[i] * i; value[i] = (int)gesammt; } for (int i = 0; i < statistik.Würfe.Length; i++) { chartSimulation.Series[1].Points.AddY(value[i] / gesammt); } Berechnungen(statistik.MaxWürfe); }