Hallo Experten,
ich bin schon langsam am verzweifeln.
Ich möchte 4 Kurven in einem Diagramm darstellen ( Temperaturen verschiedener Räume )
Die Daten werden aus einer Datenbank eingelesen. Für jeden Raum gibt es eine Spalte in der Tabelle.
Alle 5 Minuten wird eine Zeile mit den aktuellen Temperaturen hinzugefügt.
Das Diagramm wird mit einem "Start Button" zusammengebaut.
Im Diagramm habe ich auch die verschiedenen Kurven nur haben die alle die gleiche Farbe.
In der Legende habe ich aber unterschiedliche Farben. Was mich auch wundert damit durch das Diagramm "Schräge" Linien gehen. Ich denke das kommt daher weil zedgraph die Daten als "eine" Linie sieht, das würde auch erklären warum alle Linien die gleiche Farbe haben.
Nur warum ist das so ?
Ich blicks nicht.
private void diagram_bauen()
{
//Farben der Datenreie festlegen
Color[] Farbe = new Color[10];
Farbe[0] = Color.Aqua;
Farbe[1] = Color.Blue;
Farbe[2] = Color.Black;
Farbe[3] = Color.Green;
Farbe[4] = Color.Gray;
Farbe[5] = Color.HotPink;
Farbe[6] = Color.Magenta;
Farbe[7] = Color.MintCream;
Farbe[8] = Color.Olive;
Farbe[9] = Color.YellowGreen;
zed1.GraphPane.CurveList.Clear();
zed1.IsShowPointValues = true;
zed1.GraphPane.Title.Text = "Temperaturwerte";
zed1.GraphPane.XAxis.Title.Text = "Datum";
zed1.GraphPane.YAxis.Title.Text = "Temperaturen";
zed1.GraphPane.XAxis.Type = AxisType.Date;
Cls_Daten_aus_Datenbank_erstellen DB_Daten = new Cls_Daten_aus_Datenbank_erstellen();
DB_Daten.Start_zeit = start;
DB_Daten.Ende_zeit = ende;
//Jedes Element das markiert ist wird als Datenreihe dargestellt
int a = 0;
foreach (ListViewItem item in lst_Werte_Daten.Items)
{
if (item.Checked)
{
DB_Daten.Name_Spalte = item.SubItems[1].Text; //Wie sie in der Datenbank heißt
DB_Daten.Teilen_durch = 10;
string Kurvenname = item.Text; //Name wie sie im Inifile zugeordnet wird
zed1.GraphPane.YAxis.Scale.Min = 15;
zed1.GraphPane.YAxis.Scale.Max = 25;
zed1.GraphPane.AddCurve(Kurvenname, DB_Daten.PPL, Farbe[a], SymbolType.None);
}
a++;
}
//Test
DB_Daten.Name_Spalte = "Temp_Wert2";
zed1.GraphPane.AddCurve("Raum1", DB_Daten.PPL, Color.Olive, SymbolType.None);
DB_Daten.Name_Spalte = "Temp_Wert3";
zed1.GraphPane.AddCurve("Raum2", DB_Daten.PPL, Color.Green, SymbolType.None);
//Test so gehts aber auch nicht
zed1.AxisChange();
zed1.Refresh();
}
Danke für Eure Hilfe
Gruß Frankuc45
Wie hängt denn DB_Daten.PPL
mit jedem item
zusammen?
Du benutzt bisher ja immer dieselbe DB_Daten.PPL
-Instanz für alle Kurven, so daß diese als eine Datenreihe angesehen wird, s.a. Multiple curves on Same zedgraph plot.
Hallo Th69
super. Vielen Dank für die kurze und knackige Hilfe. Jetzt funktionierts.
Problem war damit nur eine PPL erstellt wurde.
Gruß frankuc45