Empfohlene Visualisierungsbibliotheken für eigenständige Anwendungen

9

Welche Visualisierungsbibliotheken (Diagramme, Grafiken, ...) würden Sie in einer eigenständigen Anwendung (Linux, .Net, Windows usw.) verwenden? Angemessene Leistung wäre auch schön.

ymihere
quelle
Was meinst du mit eigenständiger Anwendung?
Shane
Mit eigenständiger Anwendung meine ich ein ausführbares Programm.
Ymihere

Antworten:

18

Das Visualization Tool Kit VTK ist sehr beeindruckend für die 3D-Visualisierung numerischer Daten. Leider ist es auch ziemlich niedrig.

Graphviz wird ziemlich häufig zur Visualisierung von Grafiken und anderen baumartigen Datenstrukturen verwendet.

igraph kann auch zur Visualisierung baumartiger Datenstrukturen verwendet werden. Enthält nette Schnittstellen zu Skriptsprachen wie R und Python sowie eine eigenständige C-Bibliothek.

Die NCL- Bibliothek (NCAR Command Language) enthält einige hübsche Grafikroutinen, insbesondere wenn Sie räumlich verteilte, mehrdimensionale Daten wie Windfelder betrachten. Was Sinn macht, da NCAR das Nationale Zentrum für Atmosphärenforschung ist.

Wenn Sie bereit sind, die ausführbaren Anforderungen zu lockern oder ein Tool wie py2exe auszuprobieren , besteht die Möglichkeit, einige nette Python-Bibliotheken und -Anwendungen zu nutzen, wie z.

  • MayaVi : Ein von Enthought entwickeltes Front-End für VTK auf höherer Ebene.

  • Chaco : Eine weitere Enthought-Bibliothek, die sich auf 2D-Grafiken konzentriert.

  • Matplotlib : Eine weitere 2D-Plotbibliothek. Hat gute Unterstützung für TeX-basierte mathematische Annotation.

  • Grundkarte : Ein Add-On zu Matplotlib zum Zeichnen von Karten und Anzeigen geografischer Daten ( sexy Beispiele hier ).

Wenn wir das Konzept der "eigenständigen Anwendung" noch weiter ausdehnen, um PDF-Dateien einzuschließen, stehen LaTeX-Benutzern einige nette Grafikbibliotheken zur Verfügung:

  • Asymptote kann eine Vielzahl von Grafiken erstellen, aber sein Kronjuwel ist definitiv die Möglichkeit, 3D-Grafiken in PDF-Dokumente einzubetten, die von jedem mit dem Adobe Acrobat Reader ( Beispiel ) bearbeitet (gezoomt, gedreht, animiert usw.) werden können .

  • PGF / TikZ bietet TeX-Dokumenten eine wunderbare Vektorzeichnungssprache. Das Handbuch ist zweifellos die am besten geschriebene, umfassendste und schönste Dokumentation, die ich je in einem Open-Source-Projekt gesehen habe. PGFPlots bietet eine Abstraktionsschicht zum Zeichnen von Plots. Ein wunderbares Schaufenster finden Sie bei TeXample .

  • PSTricks dienten als Inspiration für TikZ und ermöglichen es Benutzern, die Leistungsfähigkeit der PostScript-Sprache zu nutzen, um ordentliche Grafiken zu erstellen.

Und für Kicks gibt es DISLIN , für das es eine native Oberfläche gibt Fortran! Nicht Open Source oder kostenlos für den kommerziellen Gebrauch.

Sharpie
quelle
Ich neige dazu, einige mehr als andere zu verwenden - das Tool, das ich am häufigsten für die Visualisierung verwende, ist R und zugehörige Pakete, aber ich habe es von dieser Liste gestrichen, da es keine einfache Möglichkeit gibt, R-Skripte zu eigenständigen "ausführbaren Dateien" zu kompilieren, die das OP wollte. Ich kann nicht wirklich einen einzigen Favoriten beanspruchen - ich muss sagen, es hängt von 1) der anstehenden Aufgabe und 2) den von mir verwendeten Werkzeugen ab
Sharpie
9

Es gibt immer schöne Gnuploten:

Gnuplot ist ein portables befehlszeilengesteuertes Grafikdienstprogramm für Linux, OS / 2, MS Windows, OSX, VMS und viele andere Plattformen. Der Quellcode ist urheberrechtlich geschützt, aber frei verbreitet (dh Sie müssen nicht dafür bezahlen). Es wurde ursprünglich entwickelt, um Wissenschaftlern und Studenten die interaktive Visualisierung mathematischer Funktionen und Daten zu ermöglichen. Es wurde jedoch erweitert, um viele nicht interaktive Anwendungen wie Web-Scripting zu unterstützen. Es wird auch als Plot-Engine von Anwendungen von Drittanbietern wie Octave verwendet. Gnuplot wird seit 1986 unterstützt und befindet sich in aktiver Entwicklung.

Gnuplot unterstützt viele Arten von Plots in 2D und 3D. Es kann mit Linien, Punkten, Feldern, Konturen, Vektorfeldern, Flächen und verschiedenen zugehörigen Texten zeichnen. Es werden auch verschiedene spezialisierte Handlungstypen unterstützt.

miku
quelle
6

Wenn Sie R verwenden können, versuchen Sie es mit ggplot2 .

Stephen Turner
quelle
4

Für Javascript ist Protovis (http://vis.stanford.edu/protovis/) sehr schön.

Joe
quelle
3

Könnte etwas eng sein, aber wenn Sie in Clojure an der JVM arbeiten, gibt es den hervorragenden Incanter :

Incanter ist eine Clojure-basierte, R-ähnliche Plattform für statistische Berechnungen und Grafiken.

Mike Mazur
quelle
3
Insbesondere könnte der Fragesteller an JFreeChart interessiert sein, das viele Incanter-Grafiken unterstützt.
Sharpie
1

Ich habe ZedGraph für .NET verwendet. Es ist Open Source und unterstützt alle gängigen 2D-Diagrammtypen.

Nikie
quelle
0

Leider läuft es nur auf Macs, aber ansonsten eine großartige Anwendung (im Grunde Processing in Python):

NodeBox ist eine Mac OS X-Anwendung, mit der Sie mithilfe von Python-Programmcode 2D-Grafiken (statisch, animiert oder interaktiv) erstellen und als PDF- oder QuickTime-Film exportieren können. NodeBox ist kostenlos und gut dokumentiert.

miku
quelle