it-swarm.com.de

Octave-Gnuplot-AquaTerm-Fehler: Terminal-Aqua-Enhanced-Titel "Figure 1" setzen ... unbekannter Terminaltyp

Ich habe Octave und Gnuplot über Homebrew installiert und AquaTerm.dmg heruntergeladen. Wenn ich versuche zu zeichnen, erhalte ich die folgende Meldung:

octave:4> plot(x,y)

gnuplot> set terminal aqua enhanced title "Figure 1" font "*,6"

                  ^
     `line 0: unknown or ambiguous terminal type; type just 'set terminal' for a list`

In einem Bash-Terminal set terminal, set Terminal, set term (und das gleiche, gefolgt von "aqua") etc gibt nichts. Ich habe versucht, ab Oktave noch einmal zu zeichnen, wenn das "AquaTerm" bereits geöffnet ist, aber nichts. Ich habe versucht, direkt von Gnuplot zu zeichnen, aber das gleiche Problem. Wie kann ich dieses "Terminal Aqua einstellen"?

Gnuplot-Startnachricht lautet "Terminal type set to 'x11' "aber keine Ahnung, wie man es ändert, die vorherigen Befehle funktionierten auch nicht.

Da AquaTerm nicht von Homebrew installiert wurde, kann Octave/Gnupot es vielleicht nicht finden ... aber keine Ahnung. Irgendwelche Ideen? Vielen Dank!

133
PGreen

Ich habe einen Weg gefunden, die Plots mit Oktave zu erzeugen, obwohl ich nicht AquaTerm sondern x11 benutze. Das Problem war, dass Octave Gnuplot "zwang", aquaterm zum Plotten zu verwenden. Anstatt aquaterm in gnuplot zu installieren und zu integrieren, tippte er in Oktaven: setenv GNUTERM x11. Hierbei werden Diagramme mit x11 erstellt, das sich bereits in der Terminal-Liste von gnuplot (set terminal). Ich weiß, es ist ein Patch, aber schließlich macht mir Aquaterm oder x11 nichts aus, ich möchte nur, dass Plots generiert werden

47
PGreen

Ich musste setenv("GNUTERM","X11") zu OCTAVE_HOME/share/octave/site/m/startup/octaverc Hinzufügen (OCTAVE_HOME ist normalerweise/usr/local), damit es dauerhaft funktioniert.

Lösung gefunden und weitere Details auf: http://www.mac-forums.com/forums/os-x-apps-games/242997-plots-octave-dont-work.html

108
nightlyop

Ich habe ein ähnliches Problem mit Octave-cli, Version 3.8.0, unter OS X 10.9.1 festgestellt. Als ich beobachtete, wie Octave-gui noch Diagramme plotten und die Antwort mit octaverc nachlesen konnte, musste ich von Octave-cli aus plotten, indem ich eine Zeile mit setenv("GNUTERM","qt") zu /usr/local/octave/3.8 hinzufügte .0/share/octave/site/m/startup/octaverc

Ich musste Gnuplot oder andere Abhängigkeiten nicht neu installieren.

75
rehumbus

Das Festlegen des Terminaltyps auf x11 würde das Problem lösen. Wenn Sie jedoch möchten, dass AquaTerm mit gnuplot funktioniert, gehen Sie wie folgt vor:

Zuerst müssen wir die vorhandene Installation von gnuplot deinstallieren, ein Terminal öffnen und diesen Befehl ausführen.

brew uninstall gnuplot

Laden Sie AquaTerm hier herunter: http://sourceforge.net/projects/aquaterm/ und installieren Sie es wie jede OSX-Anwendung.

Ab jetzt gibt es zwei Möglichkeiten, um Gnuplot mit aquaterm glücklich zu machen. Methode 1 ist einfacher, hat aber bei mir nicht funktioniert, weil meine AquaTerm-Installation nicht funktioniert hat Erstellen Sie nicht die richtigen Symlinks in/usr/local/lib. Methode 2 hat bei mir funktioniert und ich teile die Schritte, die ich unternommen habe damit es funktioniert.

Methode 1: Installieren Sie gnuplot einfach neu, nachdem AquaTerm installiert wurde. Dies scheint das Problem für Benutzer zu beheben.

brew install gnuplot

Gehen Sie zum Überprüfungsschritt, um festzustellen, ob alles funktioniert hat. Wenn nicht, folgen Sie Methode 2

Methode 2: Diese Methode ist weiter fortgeschritten, funktioniert aber garantiert, wenn Sie geduldig sind.

Grundsätzlich kann gnuplot die AquaTerm-Bibliotheksdateien nicht finden. Aus diesem Grund wird aqua nach der Installation von gnuplot nicht als Option für den Terminaltyp angezeigt. Wir müssen das Homebrew-Rezept für Gnuplot ändern, um die Aquaterm-Unterstützung zu ermöglichen. Öffnen Sie das Sudrezept für Gnuplot, indem Sie Folgendes eingeben:

brew edit gnuplot

Fügen Sie diese Zeilen hinzu, wie in dieser github-Festschreibungsnachricht gezeigt. Dadurch kann gnuplot aquaterm https://github.com/mxcl/homebrew/issues/14647#issuecomment-21132477 einbinden

Überprüfen Sie anhand der folgenden Überprüfungen, ob die richtigen AquaTerm-Bibliothekssymbole vorhanden sind:

ls /usr/local/lib/libaquaterm*
ls /usr/local/include/aquaterm/*

Die erste Zeile oben sollte einige * .dylib-Dateien zurückgeben, die zweite Zeile oben sollte einige * .h-Dateien zurückgeben, wenn sie nicht existieren. Führen Sie diese Befehle vom Terminal aus:

Sudo ln -s /Library/Frameworks/AquaTerm.framework/Versions/A/AquaTerm /usr/local/lib/libaquaterm.dylib
Sudo ln -s /Library/Frameworks/AquaTerm.framework/Versions/A/AquaTerm /usr/local/lib/libaquaterm.1.0.0.dylib
Sudo ln -s /Library/Frameworks/AquaTerm.framework/Versions/A/Headers/* /usr/local/include/aquaterm/.

Dies ist manchmal erforderlich, da das Installationsprogramm für AquaTerm die Symlinks aufgrund von Berechtigungsproblemen nicht an den richtigen Stellen erstellen kann. Sobald die/usr/local/symlinks erstellt wurden, installieren Sie gnuplot wie folgt neu:

brew install gnuplot --with-aquaterm # (formerly --aquaterm in old versions)

Stellen Sie sicher, dass Gnuplot Aquaterm sehen kann, indem Sie die folgenden Schritte ausführen und glücklich plotten!


Überprüfen Sie: ob der Gnuplot korrekt mit AquaTerm konfiguriert wurde, indem Sie den Gnuplot im Terminal starten

gnuplot

Geben Sie dies in das Gnuplot-Terminal ein

gnuplot> set term

Suchen Sie nach der Linie

Available terminal types:
         aqua  Interface to graphics terminal server for Mac OS X
         ...

Wenn Sie die obige Zeile sehen, sind Sie fertig, Gnuplot ist richtig konfiguriert und alle sind glücklich.

70
mackuntu

set terminal Oder set term Ist ein Gnuplot-Befehl.

Sie müssen nur gnuplot über die Befehlszeile ausführen, um Zugriff auf die Gnuplot-Shell zu erhalten.

Dies hat jedoch bei mir nicht funktioniert und auch nicht die Funktion setenv("GNUTERM","x11") in /usr/local/share/octave/site/m/startup/octaverc Oder ~/.octaverc (Beide haben dasselbe getan).

Also habe ich set term In der Gnuplot-Shell ausgeführt, da ich kein x11 In der Liste gesehen habe. Ich habe gnuplot mit Homebrew installiert, also habe ich es zuerst deinstalliert brew uninstall gnuplot Und dann mit x11 Und dem Flag --with-x Installiert:

brew install gnuplot --with-x

Dies löste das Problem für mich. Verwenden Sie brew info gnuplot, Um die Liste der Flags für die Installation von Gnuplot anzuzeigen.

P.S. Und ja, ich habe ein X11-dmg heruntergeladen und mit dem Paket-Installer installiert. Gnuplot hatte noch kein x11 in der Liste der unterstützten Terminals.

24
i4niac

Sie können dies versuchen:

>> brew reinstall gnuplot --with-aquaterm

oder

>> brew uninstall gnuplot
>> brew install gnuplot --with-aquaterm
10
antonpp

Erstelle eine Datei .octaverc in Ihrem Home-Verzeichnis und setzen Sie GNUTERM auf X11

echo "setenv('GNUTERM','X11')" > ~/.octaverc

Öffnen Sie das Oktavterminal und geben Sie sombrero ein, um zu prüfen, ob das Plotten funktioniert

octave:1> sombrero
8
behas

Das hat bei mir funktioniert:

  1. Unistall Gnuplot

    brauen deinstallieren gnuplot

  2. Installieren Sie AquaTerm. Sie können es hier herunterladen: http://sourceforge.net/projects/aquaterm/

  3. Installieren Sie gnuplot neu

    brauen installieren Gnuplot

6
avgn

Anton ist richtig. Sie können gnuplot jetzt einfach mit der Option --with-aquaterm neu installieren. Ich würde seine Antwort positiv bewerten, wenn ich genug Reputationspunkte hätte, um das zu tun.

$ brew uninstall gnuplot
$ brew install gnuplot --with-aquaterm

Mackuntu erwähnte oben, dass dieses Problem auf Github diskutiert wurde.

https://github.com/mxcl/homebrew/issues/14647#issuecomment-21132477

Er riet jedoch, die Option --aquaterm zu verwenden. Wenn Sie sich den Github-Link genauer ansehen, werden Sie feststellen, dass die Option --with-aquaterm ist. Wenn ich heute gnuplot mit dieser Option neu installiere, kann ich alten Octave-Code ausführen, der gnuplot zum Zeichnen von Diagrammen unter OS X verwendet.

6

Ich habe eine Antwort, die das Problem lösen sollte, auf das Sie stoßen. Für mich bestand das Problem im Wesentlichen darin, dass der Gnuplot-Build nicht die richtigen AquaTerm-Bibliotheken gefunden hat. Schau dir den Beitrag an, den ich gemacht habe:

http://deveneezer.blogspot.com/2013/06/octave-gnuplot-and-aquaterm.html

5
Yeison

In meinem Fall unter Mas OS Mojave war die Lösung, die für mich funktioniert hat, etwas anders (es könnte nur eine Frage der Syntax sein). Nach der Diskussion in diesem Thread kam ich mit der Lösung, die für mich funktionierte - es könnte wichtig sein zu bemerken, dass es mir möglich war, von der Octave-CLI, aber nicht von der Octave-Befehlszeile direkt in zu zeichnen Terminal.

Also habe ich ein ˜/.octaverc Datei und fügte den folgenden Befehl hinzu:

setenv GNUTERM qt

Beenden Sie einfach die Befehlszeile von der Oktave und geben Sie es erneut ein und konnten plotten.

3

Die Antwort ist bereits oben enthalten, aber das ist meiner Meinung nach einfacher:

nano ~/.octaverc

füge das hinzu:

setenv("GNUTERM", "X11")

Das ist es Oktave neu zu starten Sie sind fertig.

2
boulder_ruby

Was für mich funktioniert hat, ist die Installation von gnuplot-nox. Siehe auch https://bugs.mageia.org/show_bug.cgi?id=4866

Der beste Weg, um gnuplot-nox zu installieren, scheint die Installation von fink zu sein. http://sourceforge.net/projects/fink/?source=dlp

fink install gnuplot-nox

scheint einen guten Job zu machen. Die Installation schlug jedoch an einer Stelle fehl. Also habe ich gnuplot-minimal installiert und dann gnuplot-nox erneut installiert und alles hat gut funktioniert.

fink install gnuplot-minimal
fink install gnuplot-nox

gnuplot-nox install schien aqua als Standardterminal für gnuplot festgelegt zu haben. Überprüfen Sie dies, indem Sie zu Gnuplot Shell gehen. Um zu überprüfen, ob das Plotten funktioniert, geben Sie plot (1) in die Shell ein. Es sollte das Diagramm in einem Fenster anzeigen.

Hoffe das funktioniert bei dir.

Wie in anderen Beiträgen vorgeschlagen, hat das Setzen von GNUTERM auf X11 dieses Problem für mich nicht gelöst. Auch die direkte Installation von AquaTerm für Mac OSX hat dieses Problem nicht gelöst.

2
user3134249

Folgendes hat bei mir funktioniert:

setenv("GNUTERM","qt")

Sie können es entweder auf der Oktavkli ausführen, um es lokal auszuführen, oder Sie können in der Oktavstartdatei festlegen, dass es permanent ausgeführt werden soll.

/usr/local/octave/3.8.0/share/octave/site/m/startup/octaverc

Denken Sie daran, dass Sie für den Fall, dass Sie die Octaverc-Datei ändern, über Schreibrechte verfügen müssen.

1
Arjit Sharma

Hier ist die Lösung, die für mich funktioniert hat (basierend auf verschiedenen Teilen des Mackuntu-Kommentars)

Gnuplot ist wahrscheinlich bereits mit dem Befehl brew install octave für Sie installiert, daher müssen wir es zuerst entfernen

brew uninstall gnuplot

Dann muss aquaterm installiert werden ( http://sourceforge.net/projects/aquaterm/ )

Nach Abschluss der Installation müssen Sie gnuplot erneut installieren. Dies liegt daran, dass brew während der Installation das Vorhandensein von aquaterm erkennt und danach keine Prüfungen mehr vornimmt.

brew install gnuplot --with-aquaterm

Wenn Sie gnuplot nach der Installation starten, sollte dies anzeigen, dass aquaterm unterstützt wird. Und alle Grafiken in der Oktave werden funktionieren.

0
can3p