Impossible de tracer avec gnuplot sur mon Mac

47

J'essaie de tracer avec gnuplot sur mon Mac (OS X 10.8.5). J'ai installé X11 et XQuartz 2.7.4 et après cela, j'ai installé gnuplot, mais malheureusement, gnuplot ne pouvait pas tracer.

Les graphiques simples comme celui-ci ne parviennent pas à afficher et ne comportent aucun message d'erreur permettant de comprendre ce qui ne va pas:

 [1/10/13 $gnuplot >plot sin(x)
Soheil
la source
2
Pouvez-vous dire plus précisément ce qui ne fonctionne pas? Peut-être les commandes que vous utilisez, les messages d'erreur et les résultats?
Scot
1
quand je veux tracer sin (x) dans gnuplot, il ne peut pas tracer et il passe à la ligne suivante sans erreur. $ gnuplot> plot sin (x)>
Soheil le
Veuillez éditer les détails pertinents dans le corps de la question. Les commentaires sont effacés de temps en temps et nous ne voudrions pas perdre le problème lorsque cela se produit ici.
bmike
1
Comment l'avez-vous installé exactement?
user151019
Est-ce que xterm vous donne un xterminal?
user151019

Réponses:

49

La même chose m’est arrivée, mais j’ai couru

brew uninstall gnuplot; brew install gnuplot --with-x11

et installé XQuartz . Maintenant gnuplotsupporte le x11terminal:

Vous pouvez également enregistrer la sortie dans un fichier et utiliser qlmanage -p:

gnuplot -e 'set term png; set output "/tmp/plot.png"; plot sin(x)'; qlmanage -p /tmp/plot.png

qlmanage -paffiche une erreur de sandboxing dans 10.9 et imprime du texte inutile dans STDOUT; j'utilise donc une fonction comme ql() { qlmanage -p "$@"&>/dev/null; }dans les shells.

Une troisième option consiste à utiliser set term dumbpour la sortie de texte brut.

Lri
la source
1
Je suis peut-être lent aujourd'hui, mais j'ai passé 15 bonnes minutes dans la documentation gnuplot à la recherche d'un exemple simple comme celui-ci ... ou peut-être que la documentation émet certaines hypothèses sur le public et que je ne suis pas l'un d'eux :)
Jared Beck
5
xQuartz est lourd et en quelque sorte homebrew ne l’emballe pas. Je suis allé avec l'option - qt à la place bew install gnuplot --qtet cela fonctionne bien maintenant.
bibstha
3
Le nom de l'option a été changé en --with-x11mais je ne peux pas éditer deux caractères seulement.
mgd
1
Notez que vous devez parfois vous déconnecter et vous reconnecter après avoir installé XQuartz. (Je ne sais pas pourquoi, mais la variable $ DISPLAY n'a pas été définie correctement tant que je ne me suis pas déconnecté) De plus, l'installation de XQuartz est très utile : caskroom.io : brew cask install xquartz
caesarsol
ne fonctionne pas pour OS X Yosemite
Mateusz Piotrowski
24

Sous OS X Yosemite 10.10.2 et El Capitan 10.11.2, le Gnuplot ne se compresse pas avec XQuartz. Répondez au commentaire de bibstha . Le gestionnaire de fenêtres beaucoup plus robuste est dans qt et cela fonctionne

 brew uninstall gnuplot
 brew install gnuplot --with-qt

Notez que l'utilisation --qtest obsolète maintenant.

Masi
la source
Juste comme note de côté,Warning: gnuplot: --qt was deprecated; using --with-qt instead!
vitaly
@vitaly Intéressant. Je n'ai pas eu cet avertissement ou j'ai ignoré. J'ai changé la commande.
Léo Léopold Hertz
--qt a dû être valide à un moment donné et ensuite il a été déconseillé
vitaly
1
Pourquoi ne pas choisir les deux: brew install gnuplot --with-qt --with-x11.
Kenorb
En raison du bug ayant X11 dans Yosemite. Ne pas utiliser pour le moment, Yosemite ne peut donc pas tester avec la dernière mise à jour.
Léo Léopold Hertz 준영
4

Est-ce que vous l'exécutez à partir d'une fenêtre de terminal ou d'une fenêtre X11? Le terminal lancera X11 séparément pour afficher le tracé. Il est donc possible qu'il ne soit pas immédiat (ou visible). X11 est-il lancé du tout lorsque vous tapez votre plotcommande?

Si vous l'essayez dans une fenêtre X11, le résultat devrait être plus immédiat.

De plus, si vous avez utilisé macports pour l’installer à l’origine, je vous recommanderais homebrewplutôt:

brew install gnuplot

EDIT : Pour vérifier où va la sortie, vous pouvez diriger vos résultats dans un fichier:

set terminal png
set output 'testimage.png'
plot sin(x)
exit

Ensuite, voyez si un fichier appelé testimage.pngcontient votre tracé. Vous pouvez également essayer de spécifier le terminal avec:

set terminal x11
Beroe
la source
Oui, vous avez raison et le dernier> ne fait pas partie de mes ordres. De plus, je lance séparément une fenêtre Terminal et une fenêtre X11, mais aucune d’elles ne peut tracer.
Soheil
Ensuite, j'essayerais de réinstaller avec brew. Il est difficile de diagnostiquer sans en savoir plus sur votre installation.
beroe
(Réponse mise à jour avec une autre chose à tester ...)
beroe
Pourquoi le remplacement de macports par brew fait-il une différence? Ils fonctionnent tous les deux - ils sont beaucoup mieux que de le faire par vous-même
user151019
D'après mon expérience, j'ai des problèmes avec les bibliothèques et les dépendances lorsque j'utilise macports. J'ai donc cessé de le faire ...
beroe
1

À Yosemite, au départ, j'avais le quartz et le gunplot 5.0.0 installés. Cependant, je ne pouvais pas charger ma fenêtre x11 (tout le reste était fichier-X11 était en quelque sorte inconnu). Voici une solution de contournement qui "a fonctionné pour moi".

Allez dans le dossier source gunplot

make clean; 
make uninstall

puis dans le fichier "configure" sous les lignes suivantes

# Standard set of common directories for X headers.

# Check X11 before X11Rn because it is often a symlink to the current release.

---added the location of my X11 files also  
/opt/X11/include

maintenant courir

./configure
make
sudo make install

a fonctionné parfaitement pour moi comme vous voyez ci-dessous

G N U P L O T
Version 5.0 patchlevel 0    last modified 2015-01-01 

Copyright (C) 1986-1993, 1998, 2004, 2007-2015
Thomas Williams, Colin Kelley and many others

gnuplot home:     http://www.gnuplot.info
faq, bugs, etc:   type "help FAQ"
immediate help:   type "help"  (plot window: hit 'h')

Type de terminal set to 'x11'.

Praveen CS
la source
Comment avez-vous installé X11 / opt n'est pas habituel je pense
user151019
0

Merci. Après le téléchargement de gunplot 5.0 et l’installation sous Yosemite 10.10.2, gnuplot n’a pas pu "charger" le terminal x11. Après avoir pointé le fichier de configuration sur / opt / X11 / include (reconfiguration, refonte et réinstallation), tout a bien fonctionné. (J'ai aussi été surpris que X11 soit dans / opt / X11.)

Kent Milfeld
la source
Pourquoi ne pas utiliser un système à quartz plutôt que X11
user151019
0

La plupart des conseils donnés ici montrent comment installer / réinstaller GNUPlot via brew. Si vous avez une installation de GNUPlot et que vous ne savez pas quel terminal utiliser, vous pouvez le déterminer comme suit:

$ gnuplot <<<'show terminal'

   terminal type is qt 0 font "Sans,9"

Nous savons maintenant que nous utilisons le qttype de terminal. Maintenant que vous avez peu d’informations, vous pouvez décider de la marche à suivre, soit en suivant une des autres réponses pour réinstaller GNUPlot via, brewsoit en configurant votre terminal existant de la manière que vous souhaitez via set terminal ..... commander.

slm
la source