Hallo....
ich Programmiere gerade an ein Messprogramm und wollte mir ein "live" Diagramm anzeigen lassen.
Ich habe mir eine ArrayList (Collection) erzeugt in der ich die Messwerte die ich vom Messgerät bekomme als Frequenz(als xWert) und Pegel (als yWert) abspeichere.
Daraus möchte ich ein Diagramm erzeugen.
Da diese Messung recht Fix laufen muss, verwende ich keine Datenbank sondern nur die Collection und speichere da den MaxWert. Am Ende der Messung wird dann erst die Collection in die Datenbank geschrieben.
Wenn ich mir während der Laufzeit die Form anzeigen lasse mit dem Chart-Element erhalte ich den Hintergrund jedoch keine Datenreihe.
Erzeuge ich das Diagramm nach der Messung über einen Button wird es korrekt gezeichnet.
Meine Frage: Was benötige ich um es während der Laufzeit zu generieren? Bzw. was muss ich an meinen Code (siehe unten) ändern.
PS: Refresh() & Update() habe ich schon Probiert.
ich Programmiere gerade an ein Messprogramm und wollte mir ein "live" Diagramm anzeigen lassen.
Ich habe mir eine ArrayList (Collection) erzeugt in der ich die Messwerte die ich vom Messgerät bekomme als Frequenz(als xWert) und Pegel (als yWert) abspeichere.
Daraus möchte ich ein Diagramm erzeugen.
Da diese Messung recht Fix laufen muss, verwende ich keine Datenbank sondern nur die Collection und speichere da den MaxWert. Am Ende der Messung wird dann erst die Collection in die Datenbank geschrieben.
Wenn ich mir während der Laufzeit die Form anzeigen lasse mit dem Chart-Element erhalte ich den Hintergrund jedoch keine Datenreihe.
Erzeuge ich das Diagramm nach der Messung über einen Button wird es korrekt gezeichnet.
Meine Frage: Was benötige ich um es während der Laufzeit zu generieren? Bzw. was muss ich an meinen Code (siehe unten) ändern.
PS: Refresh() & Update() habe ich schon Probiert.
Code:
public void ZeichneChart2()
{
chart1.Series.Clear();
chart1.Series.Add("Series1");
//Messpunkte messpunkte = new Messpunkte();
//xWert
double[] xval = new double[167];
for (int index = 0; index != 167; index++)
{
xval[index]= messpunkte.GibFrequenz();
}
//yWert
double[] yval = new double[167];
for (int index = 0; index != 167; index++)
{
yval[index] = messpunkte.GibYWerte();
}
//Punkte hinzufügen
for (int index = 0; index != 167; index++)
{
chart1.Series["Series1"].Points.AddXY(xval[index], yval[index]);
}
chart1.DataBind();
chart1.Update();
chart1.Refresh();
}