3D Plot mit klickbaren Punkten.

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
VauT
User
Beiträge: 4
Registriert: Mittwoch 7. März 2012, 14:08

Hallo,

ich habe folgendes Problem: Ich habe dreidimensionale Punkte, die ich plotten möchte. So weit kein Problem. Allerdings soll dann jeder Punkt anklickbar sein und auf eine Bilddatei verweisen, die dann angezeigt werden kann..
Gibt es da in Python irgendeine Möglichkeit, das zu realisieren?
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Ich sehe da jetzt erst einmal primär kein Pythonproblem sondern ein allgemeines. Hast Du spezielle Anforderungen an das Grafikformat? Oder ist eines vorgegeben? Was "bedeutet" 3D überhaupt? Echtes 3D oder 2D mit Perspektive? Und worauf bezieht sich das "anklickbar"? Was stellst Du Dir darunter vor?
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
VauT
User
Beiträge: 4
Registriert: Mittwoch 7. März 2012, 14:08

Natürlich ist es erstmal ein allgemeines Problem, aber ich würde es gern mit Python lösen.
3D bedeutet in diesem Fall, dass ich Punkte mit drei Koordinaten habe, die ich dann gerne wie mit der matplotlib plotten lassen würde.
Jeder Punkt repräsentiert dabei beispielsweise ein Automodell. Wenn ich diesen Punkt dann im Plot anklicke, würde ich gern ein Bild (Format egal) des Modells anzeigen lassen.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

VauT hat geschrieben:Natürlich ist es erstmal ein allgemeines Problem, aber ich würde es gern mit Python lösen.
Das ist im Python-Forum imho inhärent klar. Aber ohne genaue Beschreibung der Constraints oder Deinen Vorstellungen nützt das alles nix. Denn Python per se kann überhaupt keine Bilder darstellen.

Mir ist noch nicht klar, inwiefern das Resultat noch 3D-Infos beinhaltet oder nicht.

Zum Thema anklickbar: Ein reines Bildformat kenne ich da nicht, aber HTML bietet mit den Image Maps ein Konzept, mit dem das realisierbar wäre.
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
VauT
User
Beiträge: 4
Registriert: Mittwoch 7. März 2012, 14:08

Naja..

Die Idealvorstellung wäre ein Plot von Punkten wie mit matplot3d, also frei dreh- und zoombar, der dann 'verweis-sensitiv' ist, so dass ich z.B. auf eine Bilddatei verweisen kann.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Also nehme ich an, dass Du solch ein Format nicht kennst? Im Grunde genommen nehme ich an, dass es so ein fertiges "Bildformat" gar nicht gibt. Letztlich handelt es sich dabei ja bereits um eine 3D-Engine... da gibt es natürlich einige, für die es auch Python-Bindings gibt. Etwa Ogre3D.
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
VauT
User
Beiträge: 4
Registriert: Mittwoch 7. März 2012, 14:08

Naja, für zweidimensionale Punkte konnte ich das jetzt mit der matplotlib und pickern bzw. mouseevents realisieren.
Für 3D Plots funktioniert das ganze leider noch nicht, da ich nicht weiß, wie man an die z-Koordinate der Maus rankommt. Vorhanden ist sie ja. Wird unter dem Plot angezeigt.
Antworten