Chart: X-Achse verschieben

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von West.

    Chart: X-Achse verschieben

    Hallo,

    Ich habe mit VB2010 einen Datalogger geschrieben und die Werte lese ich jede Sekunde ein und im Chart angezeigt. Der Chart wird alle 1 Sekunde aktualisiert.
    Das Problem oder was ich gerne ändern möchte ist, das mit der Zeit die X-Achse gestaucht wird. Nach einer bestimmten Zeit kann man nicht viel mehr erkennen.
    Ich möchte das die X-Achse ab 10 Werten weitergeschoben wird. Wie ein FiFo-Speicher. Zum Beispiel Anzeige von 0 - 10 Auf der X-Achse beim 11 Werte ist dann die Anzeige von 1 bis 11 und soweiter...
    Anbei Bilder damit man es besser versteht.

    Auszug Code:

    VB.NET-Quellcode

    1. Private Sub Timer7_Tick(sender As System.Object, e As System.EventArgs) Handles Timer7.Tick
    2. Timer7.Interval = SetTimeBase.Text 'Timer über das Textfeld "time base" verändern.
    3. Dim part1 As Integer = 0
    4. Dim part2 As Integer = 0
    5. Chart1.Series(0).XValueType = DataVisualization.Charting.ChartValueType.Auto
    6. Chart1.Series(1).XValueType = DataVisualization.Charting.ChartValueType.Auto
    7. Chart1.Series(2).XValueType = DataVisualization.Charting.ChartValueType.Auto
    8. Chart1.Series(3).XValueType = DataVisualization.Charting.ChartValueType.Auto
    9. Chart1.Series(4).XValueType = DataVisualization.Charting.ChartValueType.Auto
    10. Chart1.Series(5).XValueType = DataVisualization.Charting.ChartValueType.Auto
    11. Chart1.Series(6).XValueType = DataVisualization.Charting.ChartValueType.Auto
    12. Chart1.Series(7).XValueType = DataVisualization.Charting.ChartValueType.Auto
    13. Chart1.Series(8).XValueType = DataVisualization.Charting.ChartValueType.Auto
    14. Chart1.Series(9).XValueType = DataVisualization.Charting.ChartValueType.Auto
    15. Chart1.Series(0).Points.AddXY(TextBox1.Text, Value1.Text)
    16. Chart1.Series(1).Points.AddXY(TextBox1.Text, Value2.Text)
    17. Chart1.Series(2).Points.AddXY(TextBox1.Text, Value3.Text)
    18. Chart1.Series(3).Points.AddXY(TextBox1.Text, Value4.Text)
    19. Chart1.Series(4).Points.AddXY(TextBox1.Text, Value5.Text)
    20. Chart1.Series(5).Points.AddXY(TextBox1.Text, Value6.Text)
    21. Chart1.Series(6).Points.AddXY(TextBox1.Text, Value7.Text)
    22. Chart1.Series(7).Points.AddXY(TextBox1.Text, Value8.Text)
    23. Chart1.Series(8).Points.AddXY(TextBox1.Text, Value9.Text)
    24. Chart1.Series(9).Points.AddXY(TextBox1.Text, Value10.Text)
    25. End Sub


    Wieso landet das in den Boarddiskussionen?!
    Verschoben. ~Thunderbolt

    Dateien
    • Screen1.bmp

      (903 kB, 204 mal heruntergeladen, zuletzt: )
    • Screen2.bmp

      (894,1 kB, 182 mal heruntergeladen, zuletzt: )

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Thunderbolt“ ()

    @West Willkommen im Forum. :thumbup:
    Falls das ein Oszilloskop werden soll, gugst Du hier.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Danke. Das Oszi war eine gute Vorlage, habe es für meine Bedürfnisse genutzt und angepasst.
    Ich hätte noch eine weiter Frage: Ich würde die Werte in eine txt-Datei schreiben.
    In Excel habe ich das hinbekommen, aber nicht auf jedem Rechner ist Excel installiert.
    Ich habe auch nicht das Problem mit dem schreiben in eine Txt-Datei. Ich habe das Problem mit dem zyklischen Schreiben.
    Ich möchte mit einem Start-Button die Aufzeichnung beginnen und dann soll nach der Timerzeit eine neu Reihe/Line mit den aktuellen Werten geschrieben werden und mit Stop-Button wird diese Datei geschlossen.
    Hat da noch jemand ein Beispiel.
    Mit Excel ging es ganze einfach.

    Danke!