Autor Beitrag
KlausNeuer
Hält's aus hier
Beiträge: 6



BeitragVerfasst: Fr 24.01.14 13:40 
Hallo,

ich habe ein neues Problem mit der chart Funktion, in windowsforms

Ich habe hier beispielhaft mehrere Datenpunkte, jeder Punkt hat eine Feste Uhrzeit, welche sich im Msec bereich aber auch im Sec, Min, Stunden etc. bereich unterscheiden kann.

Ich will einfach nach drücken auf einen Button mir diese Werte auswerten und in einem Diagramm Darstellen, auf der

y-Achse wird einfach nur angegeben ob es "high" pegel also Zustand 1 hat und auf der

X-Achse ist das Datum angegeben. Der Charttype ist Column

Hier mein code:

ausblenden volle Höhe C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
            var s = new Series("ID");
                s.ChartType = SeriesChartType.Column;   //Column = Säule; Bar = Time auf Y achse
               DateTime time = new DateTime(2014117093048923);
                s.Points.AddXY(time.ToOADate(), 1);
                DateTime time11 = new DateTime(2014117093049115);
                s.Points.AddXY(time.ToOADate(), 1);
                DateTime time2 = new DateTime(2014117093049317);
                s.Points.AddXY(time2.ToOADate(), 1);
                DateTime time3 = new DateTime(2014117093049519);
                s.Points.AddXY(time3.ToOADate(), 1);
                DateTime time4 = new DateTime(2014117093049744);
                s.Points.AddXY(time4.ToOADate(), 1);


                chart1.Series.Clear();
                chart1.Series.Add(s);
              
                chart1.Series[0].XValueType = ChartValueType.DateTime;
                chart1.ChartAreas[0].AxisX.Interval = 1;
                chart1.ChartAreas[0].AxisX.IntervalType = DateTimeIntervalType.Auto;
                
                
                //chart1.ChartAreas[0].AxisX.IntervalOffset = 1; 
                chart1.ChartAreas[0].AxisX.LabelStyle.Format = "dd:MM:yyyy   HH:mm:ss:fff "//Format der Anzuzeigenden Daten auf der Xachse

                chart1.Series[0].XValueType = ChartValueType.DateTime;
  
                chart1.ChartAreas[0].AxisX.Minimum = time.ToOADate();
            
                chart1.ChartAreas[0].AxisX.Maximum = time4.ToOADate();
                chart1.Series[0].BorderWidth = 3;
                chart1.Series[0].ShadowOffset = 5;              //Schatten am Balken
                chart1.Series[0]["PixelPointWidth"] = "13";     //dicke der Balken festlegen



Jedoch bekomme ich wenn ich das Ausführe

Eine Chart angezeigt , die die Balken für jeden Datenpunkt anzeigt, jedoch steht auf der X-Achse nicht das Genaue Datum. Es steht einmal mitten im Diagramm (obwohl an der stelle kein Datenpunkt ist) die Uhrzeit

17.1.2014 09:30:49:000

An dieser stelle ist auch ein Senkrechter dünner schwarzer Strich.

Ich möchte aber an jedem Datenpunkt die Uhrzeit angezeigt bekommen, nur das interessiert micht.

Außerdem kann es auch sein das auf diese chart 50 Werte passen müssen, also brauch ich eine Scrollbar oder so, aber ka wie das geht.

danke

Ich hoffe das ist in Ordnung das ich ein neues Thema aufgemacht hab, hat ja mit dem Problem vom letzten mal nichts zu tun.