Nie mogę drukować z gnuplot na moim komputerze Mac

47

Próbuję knować z gnuplot na moim komputerze Mac (OS X 10.8.5). Zainstalowałem X11 i XQuartz 2.7.4, a następnie zainstalowałem gnuplot, ale niestety gnuplot nie mógł wykreślić.

Proste wykresy, takie jak poniższe, nie są renderowane i nie mają komunikatu o błędzie, który pomaga zrozumieć, co jest nie tak:

 [1/10/13 $gnuplot >plot sin(x)
Soheil
źródło
2
Czy możesz powiedzieć bardziej szczegółowo, co nie działa? Być może używane polecenia, komunikaty o błędach i wyniki?
Scot
1
kiedy chcę wykreślić sin (x) w gnuplot, nie może wykreślić i przechodzi do następnego wiersza bez żadnego błędu. $ gnuplot> plot sin (x)>
Soheil
Edytuj odpowiednie szczegóły w treści pytania. Komentarze są usuwane od czasu do czasu i nie chcielibyśmy stracić problemu, kiedy to się tutaj stanie.
bmike
1
Jak dokładnie to zainstalowałeś?
user151019,
Czy xterm daje ci xterminal?
user151019,

Odpowiedzi:

49

To samo mi się przydarzyło, ale potem pobiegłem

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

i zainstalowałem XQuartz . Teraz gnuplotobsługuje x11terminal:

Możesz również zapisać dane wyjściowe w pliku i użyć qlmanage -p:

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

qlmanage -ppokazuje błąd piaskownicy w 10.9 i wypisuje niepotrzebny tekst do STDOUT, więc używam funkcji jak ql() { qlmanage -p "$@"&>/dev/null; }w powłokach.

Trzecią opcją jest użycie set term dumbdo wyświetlania zwykłego tekstu.

Lri
źródło
1
Może dzisiaj jestem powolny, ale spędziłem dobre 15 minut w dokumentach gnuplot, szukając takiego prostego przykładu ... a może doktorzy przyjmują pewne założenia dotyczące odbiorców i nie jestem jednym z nich :)
Jared Beck
5
xQuartz jest ciężki i jakoś homebrew go nie pakuje. Zamiast tego wybrałem opcję --qt bew install gnuplot --qti teraz działa dobrze.
bibstha
3
Nazwa opcji zmieniła się na, --with-x11ale nie mogę dokonać edycji tylko dwóch znaków.
mgd
1
Pamiętaj, że czasami trzeba się wylogować i zalogować ponownie po zainstalowaniu XQuartz. (nie wiem dlaczego, ale nie ustawił poprawnie zmiennej $ DISPLAY, dopóki się nie wylogowałem). Bardzo przydatne do zainstalowania XQuartz jest caskroom.io : brew cask install xquartz
caesarsol 15.04.2015
nie działa w systemie OS X Yosemite
Mateusz Piotrowski,
24

W OS X Yosemite 10.10.2 i El Capitan 10.11.2 Gnuplot nie pakuje się z XQuartz. Odpowiedz w komentarzu bibstha . Znacznie bardziej solidny menedżer okien znajduje się w qt i działa

 brew uninstall gnuplot
 brew install gnuplot --with-qt

Pamiętaj, że używanie --qtjest teraz przestarzałe.

Masi
źródło
Na marginesie,Warning: gnuplot: --qt was deprecated; using --with-qt instead!
witalnie
@vitaly Interesujące. Nie dostałem tego ostrzeżenia lub zignorowałem. Zmieniłem polecenie.
Léo Léopold Hertz
--qt musiało być ważne w pewnym momencie, a następnie zostało wycofane
ważne
1
Dlaczego nie wybrać zarówno: brew install gnuplot --with-qt --with-x11.
kenorb,
Z powodu błędu X11 w Yosemite. W tej chwili nie używasz Yosemite, więc nie możesz testować z najnowszą aktualizacją.
Léo Léopold Hertz -
4

Czy uruchamiasz to w oknie terminala, czy w oknie X11? Terminal uruchomi X11 oddzielnie, aby pokazać fabułę, więc może nie być natychmiastowy (lub widoczny). Czy X11 uruchamia się w ogóle po wpisaniu plotpolecenia?

Jeśli spróbujesz w oknie X11, wynik powinien być bardziej natychmiastowy.

Ponadto, jeśli pierwotnie zainstalowałeś Macports, zalecam użycie homebrewzamiast tego:

brew install gnuplot

EDYCJA : Aby sprawdzić, dokąd zmierza wyjście, możesz skierować swoje wyniki do pliku:

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

testimage.pngSprawdź, czy plik o nazwie zawiera twoją fabułę. Możesz także spróbować określić terminal za pomocą:

set terminal x11
beroe
źródło
Tak, masz rację i ostatnie> nie jest częścią mojego polecenia. Co więcej, uruchamiam osobno zarówno okno terminalu, jak i okno X11, ale żadne z nich nie mogło drukować.
Soheil
Następnie spróbuję ponownie zainstalować przy pomocy brew. Trudno jest zdiagnozować, nie wiedząc więcej o swojej instalacji.
beroe
(Zaktualizowałem odpowiedź o kolejną rzecz do przetestowania ...)
beroe
Dlaczego zamiana macportów na napar ma taką różnicę, że obie działają - obie znacznie lepiej niż na własną rękę
użytkownik151019
Z mojego doświadczenia wynika, że ​​mam problemy z bibliotekami i zależnościami podczas korzystania z Macports, więc przestałem to robić ...
beroe
1

W Yosemite początkowo miałem zainstalowany kwarc i działkę 5.0.0. Jednak nie mogłem załadować mojego okna x11 (wszystko inne to plik-X11 był jakoś nieznany). Oto obejście, które „zadziałało dla mnie”.

Przejdź do folderu źródłowego gunplot

make clean; 
make uninstall

następnie w pliku „konfiguruj” pod następującymi wierszami

# 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

teraz biegnij

./configure
make
sudo make install

działało dla mnie idealnie, jak widać poniżej

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')

Typ terminala set to 'x11'.

Praveen CS
źródło
Jak zainstalowałeś X11 / opt nie jest zwykle myślę
użytkownik151019
0

Dzięki. Po pobraniu gunplot 5.0 i instalacji pod Yosemite 10.10.2, gnuplot nie mógł „załadować” terminala x11. Po wskazaniu pliku konfiguracyjnego na / opt / X11 / include (rekonfiguracja, przerobienie i ponowna instalacja) wszystko działało dobrze. (Byłem również zaskoczony, że X11 jest w / opt / X11.)

Kent Milfeld
źródło
Dlaczego nie użyć kwarcowego backendu zamiast X11
user151019 12.04.15
0

Większość porad tutaj pokazuje, jak zainstalować / ponownie zainstalować GNUPlot przez brew. Jeśli masz instalację GNUPlot i nie jesteś pewien, jakiego terminalu używa, możesz to ustalić w następujący sposób:

$ gnuplot <<<'show terminal'

   terminal type is qt 0 font "Sans,9"

W tym momencie wiemy, że używamy qttypu terminala. Mając teraz cienkie informacje, możesz zdecydować, jakie działania podjąć, postępując zgodnie z jedną z innych odpowiedzi, aby ponownie zainstalować GNUPlot za pośrednictwem brewlub konfigurując istniejący terminal w dowolny sposób za pośrednictwem set terminal ..... Komenda.

slm
źródło