मेरे मैक पर gnuplot के साथ साजिश नहीं कर सकते


47

मैं अपने मैक (OS X 10.8.5) पर gnuplot के साथ साजिश करने की कोशिश कर रहा हूं। मैंने X11 और XQuartz 2.7.4 स्थापित किए हैं और उसके बाद मैंने gnuplot स्थापित किया है, लेकिन दुर्भाग्य से gnuplot साजिश नहीं कर सका।

निम्नलिखित जैसे सरल प्लॉट रेंडर करने में विफल होते हैं और यह समझने में कोई त्रुटि संदेश नहीं है कि यह क्या है?

 [1/10/13 $gnuplot >plot sin(x)

2
क्या आप विशेष रूप से कह सकते हैं कि क्या काम नहीं कर रहा है? शायद आपके द्वारा उपयोग किए जा रहे कमांड, त्रुटि संदेश और परिणाम?
स्कॉट

1
जब मैं gnuplot में sin (x) को प्लॉट करना चाहता हूं, तो यह प्लॉट नहीं कर सकता है और यह बिना किसी त्रुटि के अगली पंक्ति में जाता है। $ gnuplot> साजिश पाप (x)>
सोहिल

कृपया प्रश्न के निकाय में प्रासंगिक विवरण संपादित करें। टिप्पणियाँ समय-समय पर क्लियर हो जाती हैं और हम समस्या को दूर करने के लिए नफरत करते हैं जब ऐसा होता है।
bmike

1
आपने इसे कैसे स्थापित किया?
user151019

क्या xterm आपको xterminal देता है?
user151019

जवाबों:


49

मेरे साथ भी ऐसा ही हुआ, लेकिन फिर मैं भाग गया

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

और XQuartz स्थापित किया । अब टर्मिनल gnuplotका समर्थन करता x11है:

आप आउटपुट को फ़ाइल में भी सहेज सकते हैं और उपयोग कर सकते हैं qlmanage -p:

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

qlmanage -p10.9 में सैंडबॉक्सिंग एरर दिखाता है और एसटीडीयूएसटी पर कुछ अनावश्यक टेक्स्ट प्रिंट करता है, इसलिए मैं एक फ़ंक्शन का उपयोग करता हूं जैसे ql() { qlmanage -p "$@"&>/dev/null; }गोले।

एक तीसरा विकल्प set term dumbसादा पाठ आउटपुट के लिए उपयोग करना है।


1
शायद मैं आज धीमा हूं, लेकिन मैंने gnuplot डॉक्स में एक अच्छा उदाहरण के लिए एक अच्छा 15 मिनट बिताए .. या शायद डॉक्स दर्शकों के बारे में कुछ धारणाएं बनाते हैं और मैं उनमें से एक नहीं हूं :)
जेरेड बेक

5
xQuartz भारी है और किसी भी तरह होमब्रे इसे पैकेज नहीं करता है। मैं इसके बजाय --qt विकल्प के साथ गया था bew install gnuplot --qtऔर यह अब ठीक काम करता है।
bibstha

3
विकल्प का नाम बदल गया है, --with-x11लेकिन मैं केवल दो पात्रों का संपादन नहीं कर सकता।
एमजीडी

1
ध्यान दें कि कभी-कभी आपको XQuartz स्थापित करने के बाद लॉग आउट और लॉग इन करने की आवश्यकता होती है। (पता नहीं क्यों, लेकिन यह $ DISPLAY चर को सही तरीके से सेट नहीं करता था जब तक कि मैं लॉग आउट न हो) इसके अलावा, XQuartz को स्थापित करने के लिए बहुत उपयोगी है caskroom.io : brew cask install xquartz
caesarsol

OS X Yosemite के लिए काम नहीं करता है
Mateusz Piotrowski

24

OS X Yosemite 10.10.2 और El Capitan 10.11.2 में, Gnuplot XQuartz के साथ पैकेज नहीं करता है। में उत्तर bibstha की टिप्पणी। बहुत अधिक मजबूत विंडो प्रबंधक क्यूटी में है और यह काम करता है

 brew uninstall gnuplot
 brew install gnuplot --with-qt

ध्यान दें कि उपयोग --qtकरना अभी हटा दिया गया है।


बस एक साइड नोट के रूप में,Warning: gnuplot: --qt was deprecated; using --with-qt instead!
महत्वपूर्ण

@vitaly दिलचस्प। मुझे वह चेतावनी नहीं मिली या मैंने अनदेखा किया। मैंने आज्ञा बदल दी।
लेओ लेपोल्ड हर्ट्ज़ '

--qt किसी बिंदु पर मान्य रहा होगा और तब उसे हटा दिया गया था
महत्वपूर्ण

1
क्यों दोनों का चयन करने के लिए नहीं: brew install gnuplot --with-qt --with-x11
kenorb

Yosemite में X11 होने वाले बग की वजह से। फिलहाल Yosemite का उपयोग नहीं करना इसलिए नवीनतम अपडेट के साथ परीक्षण नहीं किया जा सकता है।
लेओ लेपोल्ड हर्ट्ज़ '

4

क्या आप इसे टर्मिनल विंडो, या X11 विंडो से चला रहे हैं? टर्मिनल भूखंड दिखाने के लिए अलग से X11 लॉन्च करेगा, इसलिए यह तत्काल (या दृश्यमान) नहीं हो सकता है। जब आप अपना plotकमांड टाइप करते हैं तो क्या X11 लॉन्च हो जाता है ?

यदि आप इसे X11 विंडो में आज़माते हैं, तो परिणाम अधिक तत्काल होना चाहिए।

इसके अलावा, यदि आपने मूल रूप से इसे स्थापित करने के लिए macports का उपयोग किया है, तो मैं homebrewइसके बजाय उपयोग करने की सलाह दूंगा :

brew install gnuplot

संपादित करें : यह जाँचने के लिए कि आउटपुट कहाँ जा रहा है, आप अपने परिणामों को एक फ़ाइल में निर्देशित कर सकते हैं:

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

फिर देखें कि क्या किसी फाइल testimage.pngमें आपका प्लॉट है। आप इसके साथ टर्मिनल निर्दिष्ट करने का भी प्रयास कर सकते हैं:

set terminal x11

हां, आप सही हैं और अंतिम> मेरी आज्ञा का हिस्सा नहीं है। इसके अलावा, मैं दोनों टर्मिनल विंडो और X11 विंडो से अलग से चल रहा हूं, लेकिन उनमें से कोई भी साजिश नहीं कर सकता।
Soheil

तो मैं के साथ पुनः स्थापित करने की कोशिश करेंगे brew। आपकी स्थापना के बारे में अधिक जानकारी के बिना निदान करना कठिन है।
बेरो सेप

(परीक्षण करने के लिए एक और बात के साथ अद्यतन जवाब ...)
19

क्यों मैकफ़ोर्स की जगह काढ़ा बनाने से फर्क पड़ता है कि वे दोनों काम करते हैं - दोनों अपने दम पर करने से बेहतर है
user151019

अपने अनुभव में मैं पुस्तकालयों और निर्भरता के साथ समस्या है जब मैं macports का उपयोग करते हैं, तो ऐसा करना बंद कर दिया है ...
beroe

1

योसेमाइट में, शुरू में, मैंने क्वार्ट्ज और गनप्लॉट 5.0.0 स्थापित किया था। हालाँकि, मैं अपनी x11 विंडो लोड नहीं कर सका (बाकी सब कुछ फ़ाइल-एक्स 11 किसी तरह अज्ञात था)। यहाँ एक समाधान है कि 'मेरे लिए काम किया'।

गनप्लॉट स्रोत फ़ोल्डर पर जाएं

make clean; 
make uninstall

फिर निम्नलिखित लाइनों के तहत "कॉन्फ़िगर" फ़ाइल में

# 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

अब दौड़ो

./configure
make
sudo make install

मेरे लिए पूरी तरह से काम किया जैसा कि आप नीचे देखते हैं

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

टर्मिनल प्रकार set to 'x11'


आपने X11 / ऑप्ट को कैसे स्थापित किया, यह सामान्य रूप से मुझे नहीं लगता
user151019

0

धन्यवाद। गनप्लॉट 5.0 डाउनलोड करने और Yosemite 10.10.2 के तहत स्थापित करने के बाद, gnuplot x11 टर्मिनल को "लोड" नहीं कर सका। कॉन्फ़िगर फ़ाइल को इंगित करने के लिए / ऑप्ट / X11 / शामिल (पुन: कॉन्फ़िगर करना, रीमेकिंग, और पुनः इंस्टॉल करना) हर काम ठीक किया। (मैं हैरान था, भी, कि X11 / ऑप्ट / X11 में है।)


X11 के बजाय एक क्वार्ट्ज बैकएंड का उपयोग क्यों नहीं करें
user151019

0

यहां अधिकांश सलाह से पता चलता है कि GNUPlot को कैसे स्थापित / पुनः इंस्टॉल करना है brew। यदि आपके पास GNUPlot की स्थापना है और यह सुनिश्चित करने के लिए अनिश्चित हैं कि इसका उपयोग करने वाला टर्मिनल आपको इस तरह निर्धारित कर सकता है:

$ gnuplot <<<'show terminal'

   terminal type is qt 0 font "Sans,9"

अब हम किस बिंदु पर जानते हैं कि हम qtटर्मिनल प्रकार का उपयोग कर रहे हैं । अब हाथ में पतली जानकारी के साथ आप यह तय कर सकते हैं कि कार्रवाई का कौन सा तरीका है, या तो GNUPlot के माध्यम से पुन: स्थापित करने के लिए अन्य उत्तरों में से एक का पालन brewकरें या अपने मौजूदा टर्मिनल को किसी भी तरह से कॉन्फ़िगर करें जो आप चाहते हैं set terminal ....। आदेश।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.