2009-11-16 6 views
22

Ok, also mache ich ein Projekt zur Visualisierung einiger finanzieller Dinge in Java, das Hauptziel ist es, etwas Input von der Börse zu nehmen, es durch ein paar Gleichungen laufen zu lassen und dann das Ergebnis als 3D-Plot zu plotten. Ich habe fast alles getan, ABER die Visualisierung (was am wichtigsten ist, denke ich).Java 3D Plot Bibliothek?

Zuerst dachte ich über die Verwendung von java3d nach, aber ich habe wenig Zeit und ich habe nicht wirklich die Zeit, es zu lernen. Gibt es eine wirklich einfache Bibliothek zum Visualisieren von 3D-Zeug in Java (ich brauche Sachen wie Zoomen, Drehen etc.).

Ich fand jmathtools (die perfekt aussah), aber aus irgendeinem Grund möchte es kompilieren.

Antwort

1

Werfen Sie einen Blick auf Processing

Es ist eine Java-basierte Visualisierungstool auf schnelle Entwicklungszeit richtet. Es bietet sowohl 2D- als auch 3D-Rendering-Modi.

Es kommt mit einem eigenen Editor, aber der kompilierte Code kann zusammen mit Ihrem anderen Java-Code verwendet werden.

Beachten Sie jedoch, dass der 3D-Modus JOGL verwendet.

EDIT Schnelle Verbindung zu einigen ihrer 3D-Beispiele mit Quelle: http://processing.org/learning/3d/

3

Was genau ist falsch mit der Zusammenstellung von JMathTools? Ich wollte vor einiger Zeit auch eine schnelle 3D-Visualisierung machen und habe erfolgreich JMathTools verwendet. Die API ist einfach und Zoomen, Drehen und Schwenken kommen aus der Box. Es ist nicht möglich, jeden Aspekt des Graphen anzupassen, aber da es Open Source ist, haben Sie die Möglichkeit, die Änderungen selbst vorzunehmen.

+0

Ja, es sieht wirklich perfekt aus, aber während ich versuche es zu kompilieren (sogar die Beispiele von ihrer Website) bekomme ich seltsame Fehler (etwas mit Classloader oder so ähnlich, Entschuldigung dafür, dass ich nicht genau bin, aber ich habe es nicht mein Laptop mit mir) – Zenzen

+0

@Zenzen - Sie könnten nach den Compiler-Fehlern fragen, wenn das die Wurzel Ihres Anliegens ist. –

+0

Ich wette, dass Ihre "seltsamen Fehler" mit Ihrer JVM-Version zusammenhängen, die Website von JMathTools sagt, dass ein 1.5 jvm erforderlich ist. –

-2

Mit JFreeChart können Sie viele Diagramme in Java (sogar Candlestick-Charts). Here sind einige Beispiele.

+2

Das OP fragt nach 3D-Plots, JFreeChart unterstützt nur 2D-Plots! – Roalt

+0

Es gibt jetzt [Orson Charts 3D] (http://www.object-refinery.com/orsoncharts/) - verwandt mit JFreeChart (vom selben Autor), aber nicht kostenlos. –

6

Ich kann jzy3d empfehlen. Es ist einfach zu bedienen und produziert sehr schöne 3D-Plots.

4

gibt es auch Surface Plotter. Es ist zum Zeichnen von 3D-Funktionen (z = f (x, y)) gewidmet. Es ist LGPL, 100% pure Java-Swing, und für die Wiederverwendung konzipiert.

19

Ich versuche, eine Zusammenfassung zu machen und zeige eine einfache und effektive Möglichkeit für Grundstücke (2d und 3d)

  • JFreeChart ist ein großes Werkzeug zu schaffen, aber es gibt keine 3D-Diagramme.
  • jzy3d kann wirklich erstaunliche 3D-Diagramme erstellen, aber Sie benötigen Bibliotheken von Drittanbietern und vor allem native plattformabhängige Bibliotheken, da es JOGL verwendet. Ich habe einen Mac mit Snow Leopard (64bit) und da sind wirklich schreckliche Probleme (ich konnte es nicht lösen). Ich denke, SWT + 64 Bit Mac OS X ist das Problem.
  • JMathTools ist ein kleineres Werkzeug als die anderen, aber die Leistung ist schlecht mit großen Datensätzen.
  • Surface Plotter ist ein wirklich nettes Werkzeug, es gibt viele 3D-Optionen und es verwendet nicht JOGL oder ähnliches.

  • In My Alternative verwende ich eine nette, benutzerfreundliche Java-API (JavaPlot), die auf Gnuplot basiert.In meinem Beispiel auf github füge ich einem JPanel einen Mausbewegungs-Listener hinzu, um ein 3D-Diagramm interaktiv zu drehen. Wenn Sie Erfahrung mit Gnuplot haben, können Sie die Leistungsfähigkeit von Gnuplot in jeder Java-Anwendung nutzen.

+0

Jzy3d unterstützt jetzt die neueste Version von JOGL (2-rc2), was bedeutet, dass die neuesten Plattformen unterstützt werden! http://jzy3d.org/releases/0.9alpha2/ – Martin

+0

Ich entschied mich für SurfacePlotter, wenn JavaPlot nicht mehr funktionierte. Es war ein Kinderspiel, es mit Scala zu benutzen. Siehe Snippet hier: https://gist.github.com/1206559 – HRJ

+1

Jzy3d sieht wirklich ordentlich aus, aber es gibt meist undokumentierte (Javadoc-weise), die es schwierig machen, damit zu beginnen. – Matthieu

4

Gerade gefunden casmi, kann hilfreich sein.

+0

Ich habe schnell gesucht, aber keine Diagrammfunktion gefunden –