vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Zedgraph 
Autor: OS_67
Datum: 05.10.07 19:35

Hallo Forum,

nach Stunden des probierens wende ich mich an euch.
Ich habe ein einfaches Liniendiagramm erstellt. Die Daten kommen aus einer DB.
Soweit alles kein Problem.

Da die DB immer mehr Daten bekommt, wird die Linie im Diagramm immer mehr zusammengedrückt (nach Links).

Jetzt versuche ich wie ein kleines Fenster zu erstellen, welches dann immer die letzten 100 Datensätze in dem Diagramm anzeigt.
Am besten noch mit einer Scrolleiste.

hier mal etwas Code
      Sub CreateGraph(ByVal zgc As ZedGraphControl)
            Dim myPane As GraphPane = zgc.GraphPane
            Me.Table2TableAdapter1.Fill(Me.MaerkteDataSet1.Table2)
 
            myPane.Title.Text = "Crude Light Oil"
            myPane.Title.FontSpec.Size = 10
            myPane.XAxis.IsVisible = False
            myPane.YAxis.IsVisible = False
            myPane.Chart.Fill.IsScaled = True
 
            Dim list = New PointPairList()
            Dim x As Double, y As Double
 
            For x = 0 To (Me.MaerkteDataSet1.Table2.Rows.Count - 1) 'die 
            ' Datensätze an
                  y = Me.DataGridView1.Rows(x).Cells(2).Value
                  list.Add(x, y)
            Next x
            Dim myCurve As LineItem = myPane.AddCurve("", list, Color.Blue, _
              SymbolType.None) 'Linienfarbe und Symbol  "SymbolType.None"
            myCurve.Line.Width = 1.0F
            myCurve.Line.IsAntiAlias = True
            myCurve.Symbol.Fill = New Fill(Color.White)
            myCurve.Symbol.Size = 3
 
            'myCurve.Line.Fill = New Fill(Color.White, Color.Red, 45.0F) 
            ' 'Hintergrund der Linien
            'myCurve.Symbol.Fill = New Fill(Color.White)
 
            ' Hintergrund des inneren Bereichs
            'Über die Zahl kann ein Farbverlauf erzeugt werden
            myPane.Chart.Fill = New Fill(Color.Empty, _
              Color.LightGoldenrodYellow, 75.0F)
            'Hintergrund des äußeren Bereichs
            myPane.Fill = New Fill(Color.LightBlue, Color.FromArgb(220, 220, _
              255), 45.0F)
            myPane.Fill.IsScaled = True
 
            'Offset setzt den Abstand zur Linie fest
            Const offset As Double = 0.1
            For i As Integer = 0 To (Me.MaerkteDataSet1.Table2.Rows.Count - 1)
 
                  Dim pt As PointPair = myCurve.Points(i)
                  Dim text As New TextObj(pt.Y.ToString("f2"), pt.X, pt.Y + _
                    offset, CoordType.AxisXYScale, AlignH.Center, AlignV.Top)
                  text.ZOrder = ZOrder.A_InFront
                  text.FontSpec.Size = 5
                  text.FontSpec.Border.IsVisible = False
                  text.FontSpec.Fill.IsVisible = False
                  'text.FontSpec.Fill = New Fill(Color.Blue)
                  text.FontSpec.Angle = 0
                  text.FontSpec.FontColor = Color.Blue
                  myPane.GraphObjList.Add(text)
            Next i
 
            ' Calculate the Axis Scale Ranges
            zgc.AxisChange()
      End Sub
Google habe ich schon gefragt. Aber auch da ist nix zu finden, was mein Problem lösen könnte.
Hat einer mal ein Idee oder einen Vorschlag, wie ich da weitermachen könnte?!


Gruß Olaf
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Zedgraph1.003OS_6705.10.07 19:35

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

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

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