Hi Marcel,
Mein Dilemma ist, dass ich das Bild nicht zwischenspeichern kann (darf), ich es also von der Methode quasi direkt zurückbekommen muss.
Mal vorausgesetzt, dass ich Deine Frage richtig verstanden habe, hier ein hoffentlich hilfreiche Antwort:
Wenn Du ein Bild in eine HTML-Seite einbindet, dann kommt das IMMER aus einer anderen Datei. Das liegt daran, dass das http-Protokoll eben so ist, wie es ist: eine http-Anfrage an einen Server kriegt als Antwort gewisse Daten, und die haben einen Content-type, der ENTWEDER "text/html" ODER "image/jpeg" (oder...) ist.
Wenn Du ein Bild dynamisch erzeugen und nicht auf dem Server speichern willst, dann kannst Du das tun, es muss aber dennoch in einer eigenen Datei gemacht werden, weil der HTML-Inhalt und das Bild nicht als Antwort auf dieselbe http-Anfrage geschickt werden koennen. Das heisst, Deine Funktion zeichne_diagramm() wuerde nichts weiter tun als ein Bild-Tag der Art
<img src = "zeichne_bild.php">
hinschreiben, und die Datei zeichne_bild.php wuerde dann dynamisch ein Bild (und NUR dieses eine Bild) erzeugen und zurueckgeben (wobei es dann wohl ueberfluessig waere, eine Funktion "zeichne_diagramm" ueberhaupt einzufuehren).
Das heisst, zeichne_bild.php kriegt
header("Content-type: image/jpeg");
und danach die Ausgabe eines erzeugten Bildes in die Datei (etwa durch image_jpeg().
Ich hoffe, das war einigermassen verstaendlich.
Viele Gruesse,
der Bademeister