# Einfaches Diagramm / Graph / Koordinatensystem aus Datei erstellen



## Duke43 (29. März 2008)

Hallo, wegen des Serverproblems nochmal:

Ich habe ein Programm geschrieben, das nach den Berechnungen zwei Werte ausgibt (+1 und -1) und diese auf einen weiteren Wert anwendet und das Ergebnis dann zusammen mit Datum und Uhrzeit in eine TXT schreibt (siehe unten). Die Leerzeilen sind Neustarts vom Programm.

Ich sitze jetzt schon den ganzen Tag daran und versuche ein Koordinatensystem zu schreiben, in dem die Werte aus der Datei als Kurve dargestellt werden.

Auf der X-Achse (waagerecht) soll einfach fortlaufend die Zeilennummer sein (bzw. die Nummer der Einträge) und ggf das Datum bei Programmstart. Auf der Y-Achse die entsprechenden Endbeträge (7,8,9,8,9,8,7,8,9,10...), mit min -100 und max +100. Eine Ausgabe des kleinsten und größten Wertes wäre dabei cool, aber das kann ich selbst dann noch einbauen.

Nur da ich keinerlei Erfahrung mit dem Zeichnen in VB habe (ich habe vor ner Woche nur wegen diesem einen Programm mit VB angefangen), packe ich das nicht, auch nicht mit Anleitungen aus dem Internet, die meistens irgendwelche Funktionen darstellen.

Ich hoffe mir kann geholfen werden und jemand kennt eine Inetseite oder hat schonmal soetwas geschrieben.


Danke! Und Grüße,
D.:



> 29.03.2008, 17:55:00, 62
> 29.03.2008, 17:55:00, 61
> 29.03.2008, 17:55:00, 60
> 29.03.2008, 17:55:00, 59
> ...


----------



## Duke43 (31. März 2008)

Habs jetzt selbst gelöst... 
Einziges Problem, am Ende ist mal 1, mal 3 zeichen (-21 z.B.), beim Eintragen in die TXT einfach mehr Leerzeichen gesetzt und es läuft...


```
'KURVE ZEICHNEN
Private Sub Command1_Click()
Dim a As Integer
Dim x1 As Single
Dim y1 As Single
Dim aktuelleZeile As String
Dim ypsilon(512000) As Integer
Dim index As Integer

index = 1

    DateiName = txtStatistikfile.Text
    DateiNr = FreeFile
        Open DateiName For Input As DateiNr
            Do While Not EOF(DateiNr)
                Line Input #DateiNr, aktuelleZeile
                    ypsilon(index) = Val(Right(aktuelleZeile, 3))
                    index = index + 1
            Loop
        Close

'Skala
'Picturebox.Begrenzungen (links, oben)-(rechts, unten)
Picture1.Scale (0, 100)-(index, -100)
    
' X Achse
Picture1.Line (-100, 0)-(index, 0)

    Picture1.ForeColor = vbRed
    x1 = 0
    y1 = 0
    Picture1.CurrentX = x1
    Picture1.CurrentY = y1
    For x1 = 1 To index
        y1 = ypsilon(x1)
        Picture1.Line -(x1, y1)
    Next x1
    
End Sub


'KURVE LÖSCHEN
Private Sub Command2_Click()
Picture1.Picture = LoadPicture()
End Sub
```


----------

