Statistik mit jpGraph

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Statistik mit jpGraph

    Also...

    Unsere Firma hat ein Tool zur Berechnung von sogenannten Operation Flight Plans, kurz OFP. Was wir jetzt brauchen ist unter anderem eine Statistik wo man die Berechnungszeit pro OFP über einen Zeitrahmen von ca. 1-24 Stunden (einstellbar) klar erkennen kann.

    Pro 24 Stunden wird mit etwa 2000 OFP gerechnet, wir haben also auch 2000 Entries auf der Grafik.

    Mein Problem liegt jetzt darin, das ich bisher keinen Weg gefunden habe die einzelnen Entries einer bestimmten Zeit zuzuweisen. Also das z.B. wenn von 2-6 Uhr nichts berechnet wurde auch die Stelle auf der Grafik leer ist. Fehlende Relation zwischen X und Y Achse eben.

    Kennt sich da jemand besser mit aus?
    Zuletzt geändert von Darkheyr; 25.11.2003, 08:38.

  • #2
    grob würde ich sagen, dass du ja grundsätzlich alle werte in ein array lädst, mit einem index, der der stunde entspricht. richtig?

    und wenn du nun ne stunde hast, die keinen wert bekommt, fehlt dir der index. richtig?

    also initialisiere das array schon so, dass alle stunden bereits als index vorhanden sind und den wert 0 tragen.

    das wars.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Problem ist aber nunmal das pro Stunde mehr als ein OFP berechnet wird, und selbst wenn nicht, ein Wert von 0 würde bedeuten das der OFP einfach keine nennenswerte Berechungszeit hat - nicht das keiner berechnet wurde.

      Kommentar


      • #4
        statt 0 kannst du natürlich auch einen anderen von dir definierten wert nehmen.

        was die mehrerern operationen pro stunde angeht, so kannst du ja auch mit mehrdimensionalen arrays arbeiten.

        aber ich kann so auch nur raten, um die eine lösung zu geben, wenn ich nicht weiss, wie du es realisiert hast, oder du es dir vorstellst. du kannst es ja mal kurz und verständlich beschreiben. nach möglichkeit ohne code..
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          Wie die Werte gespeichert sind ist ja rein prinzipiell egal, aber wie bringe ich das auf eine Zeitachse? Also das die 200 OFP zwischen 8 und 10 auch dort sitzen, die 400 zwischen 12 und 14 Uhr dort und der Rest leer?

          Kommentar


          • #6
            Original geschrieben von Darkheyr
            Wie die Werte gespeichert sind ist ja rein prinzipiell egal, aber wie bringe ich das auf eine Zeitachse?
            das wäre ja dann auch rein prinzipiell egal, oder?
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar


            • #7
              Beide sind Werte in einem Array. Durchzählen ist auch kein Problem, so oder so. Das könnten was jpGraph angeht aber auch seperate Arrays sein. Das Problem ist; wie kriege ich die in Abhängigkeit in jpGraph?

              Kommentar


              • #8
                PHP-Code:
                // grundarray anlegen
                $ofp = array();

                // neues ofp anlegen und initialisieren. (jede stunde auf 0 setzen.)
                $ofp[] = array(000000000000000000000000);

                // weiteres ofp anlegen und initialisieren.
                $ofp[] = array(000000000000000000000000);

                // und noch ein ofp anlegen und initialisieren.
                $ofp[] = array(000000000000000000000000);

                // nun kannst du dir anschauen, was drin ist.
                echo '<pre>';
                print_r($ofp);
                echo 
                '</pre>';

                // du hast also ein array, dessen erster index die verschiedensten ofp's aufnehmen kann.
                // welche wiederrum stündlich aufgeteilt sind.

                // wenn du nun einen stundenwert in z.b. das 2. ofp aufnehmen willst,
                // machst du einfach für 12h ....
                $ofp[1][12] = 12345;

                // nun kannst du dir wieder anschauen, was drin ist.
                echo '<pre>';
                print_r($ofp);
                echo 
                '</pre>'
                um das ganze in deinen graphen zu bekommen, durchläuft du das array einfach mit schleifen.


                oder verstehe ich einfach nicht, was du vorhast?
                INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                Kommentar


                • #9
                  Also... nehmen wir an wir haben folgende OFP's:

                  8:09 - 15 Sekunden Berechnungszeit
                  8:32 - 3 s
                  8:58 - 14 s
                  11:12 - 5 s
                  14:39 - 12 s

                  dann müsste die Kurve von 0 bis 8:09 gar keine Werte haben - also ein Drittel der Grafik über 24 Stunden wäre leer. Bis 9:00 sind dann also schonmal eine Spitze, Abfall, Spitze. Dann sollte er wieder auf Null zurückfallen bis 11:12, dort hoch, wieder runter und bei 14:39 wieder hoch. Der Rest des Tages wäre wieder leer.

                  Das ganze rauszulesen, sortieren wie auch immer, DAS wäre ja kein Problem. Ich weiss schlichtweg nicht wie ich eine solche Darstellung hinkriege das die OFPs auch am rechten Fleck in der Grafik sind, und wie ich dazwischen die Leerräume anstelle.

                  Kommentar


                  • #10
                    Original geschrieben von Darkheyr
                    Das ganze rauszulesen, sortieren wie auch immer, DAS wäre ja kein Problem. Ich weiss schlichtweg nicht wie ich eine solche Darstellung hinkriege das die OFPs auch am rechten Fleck in der Grafik sind, und wie ich dazwischen die Leerräume anstelle.
                    jetzt kommen wir der sache schon näher...

                    ich weiss nicht, ob man das problemlos mit der class machen kann. schaue mal, ob du einfach linien mit start- und end-punkt setzen kannst. x wäre hierbei die uhrzeit (start) und uhrzeit+dauer (ende). y entsprechend in der höhe, wo du es haben willst.

                    notfalls schreibst du die das bild selber in php mit den gd-funktionen.
                    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                    Kommentar


                    • #11
                      Habe bisher leider noch nichts derartiges gefunden. .. Und bevor ich hier eigene Grafiksachen kritzle versuche ichs lieber anders

                      Kommentar

                      Lädt...
                      X