| |

Fragen & Antworten rund um sev-KomponentensevGraph: Wie am besten viele Graphen miteinander vergleichen? | |  | Autor: Maig | Datum: 18.03.11 13:42 |
| Hi,
ich habe folgendes vor:
Ich habe 2 Flexgrid Tabellen (möchte es später auf ca 6 erweitern) und pro Tabelle 15 Spalten die grafisch dargestellt werden sollen. Die Spalten bestehen aus min 30 bis max 370 Zeilen.
Die x-Achse ist immer die gleiche und ist in jeder Tabelle in der 1.Spalte(Datum).
Jetzt möchte ich in einem Graph die Möglichkeit haben per CheckBox die Spalten auszuwählen welche ich dargestellt haben möchte. Mehr als 15 Graphen werden aber nicht gleichzeitig angezeigt.
Ich habe das jetzt (s. unten) erstmal so realisiert, dass alle Spalten aller Tabellen beim öffnen des Graphen geladen werden und per .SetTransparent = True "unsichtbar" gemacht werden und anschließend per jeweiliger CheckBox auf .SetTransparent = False gesetzt werden, dass man sie sieht.
Das klappt bis jezt auch sehr gut mit 2 Tabellen und insgesamt 30 Spalten. Allerdings bin ich mir nicht sicher ob das die richtige Vorghensweise ist und ob sevGraph, später wenn ich 6 Tabellen laden möchte, so viel überhaupt verarbeiten kann, da nach meinem Verständnis ja alle Graphen geladen werden, und ich mal irgendwo was von 18 Datensets gelesen habe. Die habe ich aber mit 30 Graphen schon überschritten, oder?
Vielleicht gibt es ja da noch eine einfachere oder bessere Methode, das "Problem" hatten doch bestimmt schon mehrere?!
Hier mal ein Code Ausschnitt:
Private Sub ch_33_134_d_Click() '1. CheckBox Tabelle 1
With Graph1
If Me.ch_33_134_d.Value = 0 Then
.SetTransparent(1) = True
Else
.SetTransparent(1) = False
End If
End With
End Sub
'....hier normal CheckBoxen 2-15 von Tabelle 1....
Private Sub ch_44_134_d_Click() '1. CheckBox Tabelle 2
With Graph1
If Me.ch_44_134_d.Value = 0 Then
.SetTransparent(16) = True
Else
.SetTransparent(16) = False
End If
End With
End Sub
'....hier normal CheckBoxen 2-15 von Tabelle 2....
'....erweiterbar auf ca 6 Tabellen?
Private Sub Form_Load()
Me.Caption = Mid(FormMenü.CommonDialog1.FileTitle, 1, Len( _
FormMenü.CommonDialog1.FileTitle) - 4) & " - Enercon E33"
Dim j As Integer
Dim i As Long
With Graph1
' autom. Neuzeichnen ausschalten
.LockUpdate True
' alte Werte löschen
.Clear
' Anzahl Datenreihen (Sets)
.NumSets = 30
'Platzierung der Legende
'.LegendType = gLegendRight
'Diagramm Typ
.GraphType = gLine
'Liniendicke
.LineWidth = gThin
' Gitternetzlinien anzeigen
'.GridLines = 2
' Anzahl Werte festlegen
.Count = FormTab_E33.FGrid1.Rows
' Werte aus Tabellen auslesen und anzeigen
For i = 1 To .Count - 1
' X-Achsenbeschriftung
If .Count - 1 <= 31 Then
For j = 1 To .Count - 1 Step 2
.Data(j).Text = Format(CDate(FormTab_E33.FGrid1.TextMatrix(j, 0)), _
"dd.mmm.")
Next j
ElseIf .Count - 1 > 31 And .Count - 1 <= 120 Then
For j = 1 To .Count - 1 Step 7
.Data(j).Text = Format(CDate(FormTab_E33.FGrid1.TextMatrix(j, 0)), _
"dd.mmm.")
Next j
Else
For j = 1 To .Count - 1 Step 20
.Data(j).Text = Format(CDate(FormTab_E33.FGrid1.TextMatrix(j, 0)), _
"dd.mmm.")
Next j
End If
'Datensetnr. 1 Tabelle 1
.CurSet = 1
.Data(i).Value = Val(FormTab_E33.FGrid1.TextMatrix(i, 2)) 'E33 134d
.Data(i).ToolTipText = "E33 134m D"
'Beim laden transparent anzeigen
.SetTransparent(1) = True
'....hier normal noch Daten von Spalten 2 - 15, Tabelle 1
'Datensetnr. 1 Tabelle 2
.CurSet = 16
.Data(i).Value = Val(FormTab_E44.FGrid1.TextMatrix(i, 2)) 'E44 134d
'Beim laden transparent anzeigen
.SetTransparent(16) = True
'....hier normal noch Daten von Spalten 2 - 15, Tabelle 2
'....erweiterbar auf ca 6 Tabellen?
Next i
' Fußzeile
.Footer = "Auswertungszeitraum: " & FormTab_E33.FGrid1.TextMatrix(1, 0) & "" & _
"bis " & FormTab_E33.FGrid1.TextMatrix(FormTab_E33.FGrid1.Rows - 1, 0)
.FooterFont.Size = 8
.FooterFont.Bold = False
' autom. Neuzeichnen einschalten
.LockUpdate False
' Graph anzeigen
.Refresh
End With
End Sub Das ganze sollte dann so aussehen (erstmal für 2 Tabellen):
http://www.bilder-hochladen.net/files/hgk3-a-jpg.html
Würde mich über ein paar Tipps sehr freuen!
Gruß Martin
Beitrag wurde zuletzt am 18.03.11 um 13:52:29 editiert. |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
Neu! sevEingabe 3.0 
Einfach stark!
Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|