J'ai installé Octave et gnuplot via Homebrew et téléchargé AquaTerm.dmg. Lorsque j'essaie de tracer, je reçois le message suivant:
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`
Dans un terminal bash set terminal
, set Terminal
, set term
, (et la même chose, suivi de "aqua" aussi) etc etc ne donne rien. J'ai de nouveau essayé de tracer d'octave en ayant "AquaTerm" déjà ouvert, mais rien. J'ai essayé de tracer directement à partir de gnuplot mais le même problème .. Comment puis-je faire cela "set terminal aqua"?
Le message de départ de Gnuplot dit "Terminal type set to 'x11'
"mais je ne sais pas comment le changer, les commandes précédentes ne fonctionnaient pas non plus.
Puisque AquaTerm n’a pas été installé à partir d’Homebrew, octave/gnupot peut-être ne le trouve pas ... mais aucune idée. Toute proposition? Merci!
J'ai trouvé un moyen de générer les parcelles avec octave, bien que n'utilisant pas AquaTerm mais x11. Le problème était qu'Octave "forçait" gnuplot à utiliser aquaterm pour tracer. Au lieu d'installer et d'intégrer aquaterm dans gnuplot, tapez octave: setenv GNUTERM x11
. Avec cela, les tracés sont générés avec x11 qui est déjà dans la liste des terminaux de gnuplot (set terminal
). Je sais que c'est un patch, mais finalement ça ne me dérange pas aquaterm ou x11, je veux juste que les parcelles soient générées
Je devais ajouter setenv("GNUTERM","X11")
à OCTAVE_HOME/share/octave/site/m/startup/octaverc
_ (OCTAVE_HOME est généralement/usr/local) pour le faire fonctionner de manière permanente.
Solution trouvée et plus de détails sur: http://www.mac-forums.com/forums/os-x-apps-games/242997-plots-octave-dont-work.html
J'ai rencontré un problème similaire avec Octave-cli, version 3.8.0, sous OS X 10.9.1. Observant comment Octave-gui pouvait toujours tracer des graphiques, et en lisant la réponse avec octaverc, j'ai comploté pour travailler à partir d'Octave-cli en ajoutant une ligne avec setenv("GNUTERM","qt")
à /usr/local/octave/3.8 .0/share/octave/site/m/startup/octaverc
Je n'ai pas eu à réinstaller gnuplot ou d'autres dépendances.
Définir le type de terminal sur x11 résoudrait le problème, mais si vous souhaitez que AquaTerm fonctionne avec gnuplot, voici comment:
Nous devons d’abord désinstaller l’installation existante de gnuplot, ouvrir un terminal et exécuter cette commande.
brew uninstall gnuplot
Téléchargez AquaTerm à partir d'ici: http://sourceforge.net/projects/aquaterm/ et installez-le comme vous le feriez pour toute application OSX.
À partir de là, il y a deux façons de rendre gnuplot heureux avec aquaterm, La méthode 1 est plus simple, mais n'a pas fonctionné pour moi car mon installation AquaTerm n'a pas ne créez pas les liens symboliques corrects dans/usr/local/lib, La méthode 2 est celle qui a fonctionné pour moi et je partage les étapes que j'ai suivies pour le faire fonctionner.
Méthode 1: Il suffit de réinstaller gnuplot après avoir installé AquaTerm semble résoudre ce problème.
brew install gnuplot
Accédez à l'étape de vérification pour voir si tout a fonctionné. Sinon, suivez la méthode 2.
Méthode 2: Cette méthode est plus avancée, mais son fonctionnement est garanti si vous êtes patient.
En principe, gnuplot ne peut pas localiser les fichiers de la bibliothèque AquaTerm, c’est pourquoi aqua ne s’affiche pas en tant qu’option de type terminal après l’installation de gnuplot. Nous devons modifier la recette homebrew de gnuplot pour activer le support aquaterm, ouvrez la recette de brassage pour gnuplot en tapant:
brew edit gnuplot
Et ajoutez ces lignes comme indiqué dans ce message de validation github, cela permettra à l'option brassage de gnuplot d'inclure aquaterm https://github.com/mxcl/homebrew/issues/14647#issuecomment-21132477
Vérifiez si les liens symboliques de la bibliothèque AquaTerm appropriés existent en procédant comme suit:
ls /usr/local/lib/libaquaterm*
ls /usr/local/include/aquaterm/*
La première ligne ci-dessus devrait renvoyer des fichiers * .dylib, la deuxième ligne ci-dessus devrait renvoyer des fichiers * .h. S'ils n'existent pas, exécutez ces commandes à partir du terminal:
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/.
Cela est parfois nécessaire, car l’installateur d’AquaTerm ne peut pas créer les liens symboliques aux bons endroits en raison de problèmes d’autorisation. Une fois que les fichiers/usr/local/symlinks sont créés, réinstallez gnuplot comme ceci:
brew install gnuplot --with-aquaterm # (formerly --aquaterm in old versions)
Vérifiez que gnuplot peut voir aquaterm en suivant les étapes ci-dessous et un traçage heureux!
Vérifiez: que gnuplot a été correctement configuré avec AquaTerm en lançant gnuplot dans le terminal.
gnuplot
Tapez ceci dans le terminal gnuplot
gnuplot> set term
Cherchez la ligne
Available terminal types:
aqua Interface to graphics terminal server for Mac OS X
...
Si vous voyez la ligne ci-dessus, vous avez terminé, gnuplot est configuré correctement et tout le monde est content.
set terminal
Ou set term
Est une commande gnuplot.
Vous devez simplement exécuter gnuplot
à partir de la ligne de commande pour accéder au shell gnuplot.
Cependant, cela n'a pas fonctionné pour moi, ni la setenv("GNUTERM","x11")
dans /usr/local/share/octave/site/m/startup/octaverc
Ni ~/.octaverc
(Les deux font la même chose).
J'ai donc lancé set term
Dans le shell gnuplot, car il n'y avait pas de x11
Dans la liste. J'ai utilisé homebrew pour installer gnuplot, je l'ai donc d'abord désinstallé brew uninstall gnuplot
, Puis installé avec x11
À l'aide de l'indicateur --with-x
:
brew install gnuplot --with-x
Cela a résolu le problème pour moi. Utilisez brew info gnuplot
Pour voir la liste des drapeaux pour l’installation de gnuplot.
P.S. Et oui, j’ai téléchargé un dmg X11 et l’a installé à l’aide du programme d’installation du paquet, mais gnuplot n’avait toujours pas x11 dans la liste des terminaux pris en charge.
Vous pouvez essayer ceci:
>> brew reinstall gnuplot --with-aquaterm
ou
>> brew uninstall gnuplot
>> brew install gnuplot --with-aquaterm
Créer un fichier .octaverc
dans votre répertoire personnel et définissez GNUTERM sur X11
echo "setenv('GNUTERM','X11')" > ~/.octaverc
Ouvrez le terminal d'octave et tapez sombrero
pour vérifier si le traçage fonctionne
octave:1> sombrero
Cela a fonctionné pour moi:
Unistall gnuplot
brasser désinstaller gnuplot
Installez AquaTerm. Vous pouvez le télécharger ici: http://sourceforge.net/projects/aquaterm/
Réinstallez gnuplot
brasser installer gnuplot
Anton a raison. Vous pouvez maintenant simplement réinstaller gnuplot avec l'option --with-aquaterm. Je ferais passer sa réponse si j'avais assez de points de réputation pour le faire.
$ brew uninstall gnuplot
$ brew install gnuplot --with-aquaterm
Mackuntu a mentionné plus haut que cette question avait été discutée sur github.
https://github.com/mxcl/homebrew/issues/14647#issuecomment-21132477
Mais il a conseillé d'utiliser l'option --aquaterm. Si vous regardez de près le lien github, vous verrez que l’option est --with-aquaterm. Réinstaller gnuplot avec cette option m'a permis aujourd'hui d'exécuter un ancien code d'octave qui utilise gnuplot pour tracer des graphiques sur OS X.
J'ai une réponse qui devrait résoudre le problème que vous rencontrez. Pour moi, le problème était essentiellement que la construction de gnuplot ne localisait pas les bibliothèques AquaTerm appropriées. Découvrez le post que j'ai fait:
http://deveneezer.blogspot.com/2013/06/octave-gnuplot-and-aquaterm.html
Dans mon cas, sur Mas OS Mojave, la solution qui fonctionnait pour moi était légèrement différente (cela pouvait être une question de syntaxe uniquement). Suite à la discussion sur ce fil Je suis arrivé avec la solution qui me convenait - il serait peut-être important de noter qu'il était possible pour moi de tracer depuis Octave-cli mais pas depuis Octave directement en ligne de commande Terminal.
J'ai donc créé un ˜/.octaverc
fichier et y a ajouté la commande suivante:
setenv GNUTERM qt
Il suffit de quitter la ligne de commande d’octave et de saisir à nouveau pour pouvoir tracer.
La réponse est déjà contenue dans ce qui précède, mais c'est plus simple, je pense:
nano ~/.octaverc
ajoute ça:
setenv("GNUTERM", "X11")
Ça fait redémarrer l'octave que vous avez terminé.
Ce qui a fonctionné pour moi, c'est d'installer gnuplot-nox. Voir aussi https://bugs.mageia.org/show_bug.cgi?id=4866
On dirait que la meilleure façon d’installer gnuplot-nox est d’installer fink. http://sourceforge.net/projects/fink/?source=dlp
fink install gnuplot-nox
semble faire du bon travail. Cependant, l'installation échouait à un moment donné. J'ai donc installé gnuplot-minimal, puis lancé à nouveau l'installation de gnuplot-nox et tout a bien fonctionné.
fink install gnuplot-minimal
fink install gnuplot-nox
gnuplot-nox install semblait avoir défini aqua comme terminal par défaut pour gnuplot. Vérifiez cela en allant sur gnuplot Shell. Pour vérifier si le traçage fonctionne, tapez plot (1) dans le shell. Il devrait montrer l'intrigue dans une fenêtre.
J'espère que cela fonctionne pour vous.
Comme suggéré dans d'autres publications, régler GNUTERM sur X11 ne résout pas ce problème pour moi. De plus, l'installation directe d'AquaTerm pour Mac OSX n'a pas résolu ce problème.
Ce qui suit a fonctionné pour moi:
setenv("GNUTERM","qt")
Vous pouvez soit l'exécuter sur la clé d'octave, pour une exécution locale, soit définir le fichier de démarrage d'octave de manière permanente.
/usr/local/octave/3.8.0/share/octave/site/m/startup/octaverc
Rappelez-vous que si vous modifiez un fichier octaverc, vous devez avoir des droits en écriture.
Voici la solution qui a fonctionné pour moi (basée sur différentes parties du commentaire mackuntu)
Gnuplot est probablement déjà installé pour vous par la commande brew install octave, nous devons donc le supprimer au préalable.
brew uninstall gnuplot
Ensuite, aquaterm doit être installé ( http://sourceforge.net/projects/aquaterm/ )
Une fois l’installation terminée, vous devez installer gnuplot à nouveau. En effet, l’infusion détecte la présence d’aquaterm lors de l’installation et n’effectuera aucune vérification ultérieure.
brew install gnuplot --with-aquaterm
Si vous lancez gnuplot après l'installation, cela devrait montrer que aquaterm est pris en charge. Et tous les graphiques en octave fonctionneront.