Frage

Was ist der beste Weg, Streudiagramme in C ++ grafisch darzustellen?

Sie schreiben Sie Daten in eine Datei und ein anderes Werkzeug verwenden? Gibt es eine Bibliothek wie matplotlib in Python?

War es hilfreich?

Lösung

Ich schreibe immer Daten aus und dann mit gnuplot meine Grafiken zu erstellen. Es ist bei weitem der beste Weg, ich Diagramme in einer Vielzahl von Formaten zu produzieren gefunden haben: eps, png, JPEG, xpm, you name it

.

gnuplot wird sehr leicht Streudiagramm tun. die x und y Werte die in zwei durch Leerzeichen getrennte columnss sind, dann

plot "data.txt" using 1:2 

gibt Ihnen einen schnellen Streudiagramm. Dann können Sie es anpassen und was nicht andere gnuplot Kommandos.

Wenn Sie in der Wissenschaft beteiligt sind, dann wird das Lernen gnuplot sehr wertvoll sein für Sie. Es schlägt den Mist aus tun Excel-Diagramme für sicher und es erleichtert die Aufgabe Plots macht in Papieren aufzunehmen.

Andere Tipps

Wenn Sie einen C suchen ++ Bibliothek anstatt ich unabhängig Plotten Tool wie gnuplot, würde ich Folgendes beachten:

DISLIN scheint die interessantere der beiden zu sein. Hier ist eine Beschreibung aus dem Wikipedia-Artikel extrahiert:

  

DISLIN ist ein High-Level und einfach zu bedienen Bibliothek von Helmut Michels am Max-Planck-Institut in Katlenburg-Lindau, Deutschland entwickelt Plotten. Helmut Michels arbeitet derzeit als Mathematiker und Unix-System-Manager im Rechenzentrum des Instituts.

     

Die DISLIN Bibliothek enthält Routinen und Funktionen für Daten als Kurven, Balkendiagramme, Kreisdiagramme, 3D-Farbplots, Flächen, Konturen und Karten anzuzeigen. Mehrere Ausgabeformate wie X11 unterstützt werden, VGA, Postscript, PDF, CGM, HPGL, SVG, PNG, BMP, PPM, GIF und TIFF.

     

DISLIN für die Programmiersprachen Fortran 77, Fortran 90/95 und C. Plotten Erweiterungen für die Sprachen Perl, Python und Java sind auch für die meisten Betriebssysteme verfügbar ist unterstützt. Die aktuelle Version von DISLIN ist 9.4, veröffentlicht im Oktober 2008. Die erste Version 1.0 wurde im Dezember 1986 veröffentlicht.

     

Die DISLIN Software ist kostenlos für nicht-kommerzielle Nutzung.

Sehr schwere Lösung: Sie könnten verlinken gegen ROOT , die gerade über alles tun, werden Sie wollen:

  • läuft auf Mac, Windows und Linux
  • läuft kompiliert oder mit dem cint interperter
  • Ausgabe in eine Datei in Encapsulated Postscript, PDF, GIF, PNG ...
  • Anzeige auf dem Bildschirm verschiedene Technologien mit
  • serialisiert werden die Daten in einem internen Format, die später manipuliert werden kann

Sicher, es ist ein wenig zu viel für die meisten Menschen, aber es genau das tut, was Sie gefragt. Ich benutze es, weil ich es wissen, und es ist schon auf meinen Maschinen becase ich diese Art von Physiker bin.

Der gute alte GNU, sie haben alles ...

http://directory.fsf.org/project/plotutils/

Dies ist sicherlich nicht der beste Weg, aber ich in der Regel Ausgabedateien schreiben, die von R und verwenden diese, zusammen mit einem entsprechenden Skript, die Diagramme zu zeichnen.

Das Problem hierbei ist, dass C ++, Java im Gegensatz zu zum Beispiel hat keine eingebauten GUI oder Grafiken. Wenn Sie möchten, Graphen mit C ++ generieren Sie benötigen würde eine GUI-Bibliothek für Ihr Betriebssystem zur Verfügung zu verwenden. Es gibt kostenlose GUI-Bibliotheken, viele Quer plaform wie Qt oder GTK.

Doch wie andere Leute haben darauf hingewiesen, für die einfachste Sache, die Sie die Daten in eine Textdatei zu tun wäre, um zu retten, und ein anderes Programm verwenden, um die Grafik zu erzeugen. gnuplot ist auf jeden Fall eine gute Wahl. Es wird standardmäßig mit den meisten Linux-Distributionen, und Sie erhalten für Windows unter Cygwin.

Viele Grüße in C ++ für alle, Plotten, die es noch nicht getan haben. Ich werde sagen, was ich Graphs in C ++

plotten tat
  1. Laden Sie die Zip-Datei "gp443win32.zip" von http://sourceforge.jp/projects/sfnet_gnuplot/downloads/gnuplot/4.4.3/gp443win32.zip/

  2. Entpacken Sie es in "C: \ Gnuplot" dann lese ich "C: \ Gnuplot \ gnuplot \ README.Windows" und ich habe diese Informationen:

  3. habe ich Windows 7 ==> so müssen Sie "winhlp32.exe" heruntergeladen ... suche nur für sie "winhlp32.exe Windows 7" in eine Suchmaschine ein und gehen durch die erste Verbindung.

  4. Fügen Sie auf den "Pfad" Umgebungsvariable den Pfad für binäre Ordner, ist "C: \ Gnuplot \ gnuplot \ binäre"

  5. ich dann Shutdown meinem Computer und öffnen Sie es erneut. Nachdem ich festgestellt, dass es nicht um die Änderung in den Umgebungsvariablen zu erfassen hat: D

  6. Sie müssen nun einen Beispielcode schreiben Ihre Plotten Fähigkeit zu testen :) so können Sie diesen Link besuchen http://code.google.com/p/gnuplot -cpp / source / browse / # svn% 2Ftrunk um zu sehen, die Header-Datei "gnuplot_i.hpp" und Quelldatei "example.cc".

Sie werden viele und viele Graphen erhalten, wählen Sie Ihre entsprechende Graph, passen Sie Ihren Kern und genießen:)

Wenn Sie mit matplotlib vertraut sind, können Sie einbetten Python in C / C ++ Anwendungen. Je nachdem, was Sie wollen, dass es für, könnte dies eine schnelle Lösung sein.

Chart Director hat Bindings für C ++. Ich habe ihre .NET-Bibliotheken verwendet, und ich habe mit ihnen ziemlich glücklich gewesen. Es ist eine ziemlich billige Bibliothek und gibt Ihnen die Möglichkeit, alle Arten von verschiedenen Diagrammen zu tun.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top