rayo hat geschrieben:
Ich kenn matplotlib nicht, aber ich denke sowas könnte vielleicht helfen:
Code: Alles auswählen
#alle Werte der Plotfunktion übergeben
punkt = plot(x, y, marker=’o’, mfc=’r’, ms=3)
#ohne die For-Schleife nacher weiter
ioff()
show()
Dann würde aber alles auf einmal gezeichnet, wenn ich das soweit verstanden habe. Es soll aber zu sehen sein, wie sich das Bild aufbaut. Das wird durch die Schleife getan. (und falls zu schnell mit entsprechender sleep-Prozedur gebremst)
CM hat geschrieben:
- Welches Betriebssystem nutzt Du und wie hast Du matplotlib installiert?
Ich nutze Windows 2000, und habe matplotlib zusammen mit python und ipython in einem für die Python-Vorlesung gemachten Paket installiert.
Als Editor nutze ich ConTEXT und Compiliere von da aus direkt. Könnte das Probleme verursachen?
CM hat geschrieben:
- Welches graphische Backend nutzt Du? (Unter UNIX-Derivaten mußt Du u. U. im setup-skript explizit angeben, welches Backend (Tk, wx, gtk) Du nutzen willst. Meist reicht aber auch die "auto"-Konfigurationsoption. Das hängt davon ab, was bei Dir wie installiert wurde. Insbesondere unter OSX gibt es manchmal Probleme.)
Sorry, was heißt grafisches Beckend?
CM hat geschrieben:
- Nutzt Du außer numpy noch ein anderes array-Modul? (Wenn pylab auf numarray zugreift und Du aber numpy anschließend importierst, kann es Probleme geben. Aber danach sieht es zunächst einmal nicht aus.)
Ich nutze nur die module im Code. Laut Vorlesung, sind die im Kurs verwendeten doppelt belegten Definitionen im zweiten aktueller, sodass die Reihenfolge stimmt.
CM hat geschrieben:
Wie hast Du denn ipython gestartet? Mit der --pylab - Option? In dem Fall sollte
funtionieren. Tut es das? In der Out-Zeile sollte jetzt etwas stehen wie "[<matplotlib.lines.Line2D instance at 0x2aaab34572d8>]". Dann erübrigt sich der Import von pylab.
Ich habe ipython nicht mit --pylab gestartet, sondern mit dem konventionellen MS-Doppelklick, aber es funktioniert trotzdem, der plotbefehl wird ausgeführt und liefert genau sowas ([<matplotlib.lines.Line2D instance at 0x017D6BE8>]).
CM hat geschrieben:
Und schließlich: Kommentiere mal das ioff() aus. Du willst doch interactiv arbeiten?
Das soll nur interaktiv sein, damit sich das Bild sichtbar aufbaut. Danach kann ich doch dann ioff() schreiben, oder? Schließlich passiert ja nichts mehr.
Rebecca hat geschrieben:Irgendwie hatte sich bei mir beim Copy und Paste ein Steuerzeichen bei marker="o" eingeschlichten, nachdem ich das beseitigt hatte, funktioniert es bei mir. Geht bei dir ueberhaupt ein Grafik-Fenster auf? Ist eventuell deine Installation von matplotlib nicht in Ordnung?
Was ist ein Steuerzeichen?
Soweit ich das beurteilen kann, funktioniert matplotlib ganz gut, ich hab schon damit rumgespielt. (Funktionen zeichnen, Achsen einteilen ...)
Was mich noch verwirrt, ist: In ipython gibt es keine Fehler, aber es wird nichts außer dem Punkt gezeichnet. Wenn ich den kompletten Code aber über meinen Editor importiere, geht nur das schwarze Fenster auf und wieder zu, kein Grafikfenster. Ich habe dann eine Zeile
eingefügt, um das automatische Schließen zu verhindern und es schließt trotzdem sofort, was auf einen Abbruch schließen lässt, der im ipython nicht auftritt.
Was mich noch vielmehr verwirrt (weiß nicht, ob es mit dem Problem zu tun hat), wenn ich den kompletten Code bis auf die letzte Zeile
wegkommentiere, dann schließt das Programm trotzdem sofort, wenn ich den wegkommentierten Code lösche, dann erhalte ich erst die richtige Meldung '<press RETURN to quit>'
Entschuldigt, dass ich mich hier vielleicht etwas quer ausdrücke, ich kenne Python wirklich erst seit gestern. Der Code ist auch nicht von mir, weshalb ich wie gesagt, die entscheidenden zwei Zeilen auch nicht komplett verstehe. Unter anderem verwirrt mich, dass immerwieder punkt[0] aufgerufen wird.