Octave-Gnuplot-AquaTerm त्रुटि: सेट टर्मिनल एक्वा बढ़ाया शीर्षक "चित्र 1" ... अज्ञात टर्मिनल प्रकार "


136

मैंने Homebrew के माध्यम से ऑक्टेव और gnuplot स्थापित किया है, और AquaTerminosg डाउनलोड किया है। जब मैं साजिश करने की कोशिश करता हूं, तो मुझे निम्नलिखित संदेश मिलता है:

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`

एक बैश टर्मिनल set terminalमें set Terminal, set term(और वही, इसके बाद "एक्वा" भी) आदि कुछ नहीं देता है। मैंने ऑक्टेव से फिर से प्लॉटिंग की कोशिश की है जिसमें "एक्वाटर्म" पहले से ही खुला है, लेकिन कुछ भी नहीं। मैं gnuplot से सीधे साजिश रचने की कोशिश की है, लेकिन एक ही समस्या है .. मैं यह "टर्मिनल एक्वा सेट" कैसे कर सकता हूं?

Gnuplot शुरू करने वाला संदेश कहता है " Terminal type set to 'x11'" लेकिन इसे बदलने का कोई विचार नहीं है, पिछले आदेश न तो काम करते थे।

चूंकि AquaTerm को Homebrew से स्थापित नहीं किया गया था शायद ऑक्टेव / gnupot इसे नहीं पा सकता ... लेकिन कोई विचार नहीं। कोई अंदाजा? धन्यवाद!


पृथ्वी पर इसका क्या करना है? आपको set terminalgnuplot में टाइप करने के लिए कहा जाता है , न कि bash में।
एन। 'सर्वनाम' मी।

1
@nm मैंने बैश में कोशिश की क्योंकि संदेश के बाद "सेट टर्मिनल" कठोरता टाइप करने (और इसलिए, ओक्टेव के अंदर) ने त्रुटि दी। अब मैंने gnuplot खोलने की कोशिश की और "सेट टर्मिनल" टाइप किया और यह काम किया, यह एक सूची दिखाता है जिसमें एक्वा नहीं है। लिंक के लिए धन्यवाद! चूंकि मैंने gnuplot स्थापित किया है, इसलिए मैंने brewइसे सीधे संकलित नहीं किया है। अगर मैं डाउनलोड और संकलन के बाहर gnuplot का संकलन करता हूं, तो पता नहीं कि ऑक्टेव के साथ कोई संघर्ष या समस्या होगी ...
PGreen

1
लिनक्स उपयोगकर्ताओं के लिए: इंस्टॉल करने का प्रयास करें gnuplot-x11और setenv("GNUTERM","X11")अपने में जोड़ें ~/.octaverc
मार्टिन थॉमा

setenv("GNUTERM","qt")मेरे लिए काम किया।
जियापन

जवाबों:


110

मुझे स्थायी रूप से काम करने के setenv("GNUTERM","X11")लिए OCTAVE_HOME/share/octave/site/m/startup/octaverc(OCTAVE_HOME आमतौर पर / usr / स्थानीय है) को जोड़ना पड़ा ।

समाधान पाया और अधिक विवरण: http://www.mac-forums.com/forums/os-x-apps-games/242997-plots-octave-dont-work.html


यदि आप कभी भी इसे वापस लाना चाहते हैं, तो मूल मूल्य है aquaoctave:1> getenv GNUTERM ans = aqua
DeepSpace101

8
यदि आप वैश्विक ओकटाव को अपडेट नहीं करना चाहते हैं, तो बस एक फ़ाइल बनाएं ~ / .octaverc और वहां सेटेनव कमांड दर्ज करें।
राज

83
मैंने अभी OS X 10.9 (Mavericks) पर Octave 3.8.0 स्थापित किया है, और gnuplot_qt का उपयोग करके विंडो के लिए Qt (एक्वा या x11 के बजाय) का उपयोग करने के लिए ऑक्टेव बंडल स्थापित किया गया लगता है। setenv("GNUTERM","qt")मेरे लिए काम करने वाली एक ~ / .octaverc फ़ाइल बनाना (धन्यवाद @Raj और @nightlyop)।
टॉमिलगिन

यदि आप ओक्टेव को स्थापित करने के लिए Homebrew का उपयोग करते हैं, तो आपको ऑक्टेवेर फ़ाइल निम्न पथ में मिलेगी:usr/local/Cellar/octave/4.0.0_5/share/octave/site/m/startup/octaverc
केविन झाओ

3
setenv ("GNUTERM", "qt") ने मेरे लिए सिएरा 10.12.6 पर काम किया। "x11" नहीं किया।
ट्रेविस थॉमस

79

मैं ओएस एक्स 10.9.1 पर ऑक्टेव-क्ली, संस्करण 3.8.0 के साथ एक समान मुद्दे में भाग गया हूं। यह देखते हुए कि कैसे ऑक्टेव-गुई अभी भी चार्ट्स को प्लॉट कर सकते हैं, और ऑक्टेवार्क के साथ उत्तर पढ़ सकते हैं, मैंने ऑक्टेव-क्ली से /usr/local/octave/3.8.0-share/octave/ के साथ एक लाइन जोड़कर काम करने की साजिश रची setenv("GNUTERM","qt")है। साइट / एम / स्टार्टअप / octaverc

मुझे gnuplot या अन्य निर्भरताओं को फिर से स्थापित करने की आवश्यकता नहीं थी।


यह पूर्ण है! धन्यवाद!
थॉमस इंगल्स

6
GNUTERM को qt पर सेट करना मेरे लिए काम किया (X11 नहीं) लेकिन मैंने इसे अपने होम डायरेक्टरी (~ / .octaverc) में रखा था न कि ऊपर दी गई डायरेक्टरी में। मुझे नहीं पता कि अंतर क्या है, लेकिन घर की निर्देशिका अधिक स्थापना तटस्थ लगती है।
sepans

3
मैंने अपने होम डायरेक्टरी ~ / .octaverc में setenv ("GNUTERM", "qt") को भी जोड़ा है और अब ओक्टेव के साथ प्लॉटिंग एक आकर्षण की तरह काम कर रहा है। धन्यवाद
chekkal

धन्यवाद। एल Capitan के लिए काम करता है!
रोहन

70

टर्मिनल प्रकार को x11 पर सेट करने से समस्या का समाधान हो जाएगा, लेकिन अगर आप एक्वाटर्म को प्राप्त करना चाहते हैं तो यहां gnuplot के साथ काम करना है:

पहले हमें gnuplot की मौजूदा स्थापना को अनइंस्टॉल करने, टर्मिनल खोलने और इस कमांड को चलाने की आवश्यकता है।

brew uninstall gnuplot

यहां से एक्वाटर्म डाउनलोड करें: http://sourceforge.net/projects/aquaterm/ और किसी भी OSI एप्लिकेशन को इंस्टॉल करें।

यहाँ से, ग्नूप्लोट को एक्वाटर्म से खुश करने के दो तरीके हैं, विधि 1 आसान है, लेकिन मेरे लिए काम नहीं किया क्योंकि मेरे एक्वाटर्म इंस्टॉलेशन ने / usr / लोकल / लिब में सही सिमिलिंक नहीं बनाए, विधि 2 है एक जो मेरे लिए काम करता है, और मैं इसे काम करने के लिए उठाए गए कदमों को साझा कर रहा हूं।

विधि 1: AquaTerm स्थापित करने के बाद बस gnuplot को पुनर्स्थापित करें लगता है कि यह समस्या लोगों के लिए ठीक है।

brew install gnuplot

सब कुछ काम किया है, अगर नहीं, यह देखने के लिए सत्यापित चरण पर जाएं, विधि 2 का पालन करें

विधि 2: यह विधि अधिक उन्नत है, लेकिन यदि आप रोगी हैं तो काम करने की गारंटी है।

अनिवार्य रूप से gnuplot AquaTerm लाइब्रेरी फ़ाइलों का पता नहीं लगा सकता है, इसलिए हम gnuplot स्थापित करने के बाद एक्वा टर्मिनल प्रकार के विकल्प के रूप में नहीं दिखाते हैं। हमें ग्नूप्लोट के लिए होमब्रीव नुस्खा को संशोधित करने की आवश्यकता है ताकि एक्वाटर्म समर्थन को सक्षम किया जा सके, टाइपिंग के लिए ग्नूप्लोट के लिए काढ़ा नुस्खा खोलें:

brew edit gnuplot

और इन लाइनों को इस github प्रतिबद्ध संदेश में दिखाए गए अनुसार जोड़ें, इससे gnuplot के लिए एक्वाटर https://github.com/mxcl/homebrew/issues/14647#issuecommentment111132477 शामिल करने के लिए काढ़ा विकल्प सक्षम हो जाएगा

यह देखने के लिए जांचें कि क्या इन जाँचों को करने से उचित AquaTerm पुस्तकालय समरूपता मौजूद है:

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

ऊपर की पहली पंक्ति को कुछ * .dylib फ़ाइलों को वापस करना चाहिए, दूसरी पंक्ति को कुछ * .h फ़ाइलों को वापस करना चाहिए, यदि वे मौजूद नहीं हैं तो इन कमांड को टर्मिनल से चलाएं:

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/.

यह कभी-कभी आवश्यक होता है क्योंकि एक्वाटर्म के लिए इंस्टॉलर अनुमति के मुद्दों के कारण सही स्थानों पर सिम्बलिंक नहीं बना सकता है। एक बार / usr / लोकल / सिम्लिंक बनने के बाद, इस तरह gnuplot को पुनर्स्थापित करें:

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

सत्यापित करें कि gnuplot नीचे दिए गए चरणों का उपयोग करके और खुश प्लॉटिंग में एक्वाटर्म देख सकता है!


सत्यापित करें: उस gnuplot को AquaTerm के साथ टर्मिनल में gnuplot लॉन्च करके सही ढंग से कॉन्फ़िगर किया गया था

gnuplot

यह gnuplot टर्मिनल में टाइप करें

gnuplot> set term

लाइन के लिए देखो

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

यदि आप उस रेखा को ऊपर देखते हैं, तो आप कर रहे हैं, gnuplot सही ढंग से कॉन्फ़िगर किया गया है और हर कोई खुश है।


विधि 2 सभी तरह से!
बेन मिलर

2
FYI करें: मुझे gnuplot के लिए नुस्खा अपडेट करने की आवश्यकता नहीं थी; बस gnuplot स्थापित करने से पहले सिम्बलिंक को जोड़ने का काम किया। ऐसा लगता है कि Homebrew के किसी भी समस्या को ठीक किया गया है। चीयर्स!
एरन

3
brew reinstall gnuplot --aquatermएक आकर्षण की तरह काम किया ... उस बिंदु पर पहले से ही एक्वाटर्म स्थापित किया गया होगा।
Pykler

6
मेरे सेटअप के साथ, मुझे करना पड़ा brew install gnuplot --with-aquaterm; जाहिरा तौर पर 4.6.6 के लिए काढ़ा ग्नुप्लोट रेसिपी '--with-aquaterm' का उपयोग करता है: अब रेसिपी को संपादित करने या उन सीमलिंक बनाने की आवश्यकता नहीं है, लेकिन आपको ग्नोथेल स्थापित करते समय --with-aquaterm को स्पष्ट रूप से जोड़ना होगा।
माइक सोकोलोव

बहुत मदद के लिए धन्यवाद ... यह मेरे लिए 2 विधि का उपयोग करके अच्छी तरह से काम किया
minhas23

47

मुझे ओक्टेव के साथ भूखंडों को उत्पन्न करने का एक तरीका मिला, हालांकि एक्वाटर्म का उपयोग नहीं किया गया है, लेकिन x11। समस्या यह थी कि ऑक्टेव ने ग्नूप्लोट को "मजबूर" किया था ताकि एक्वाटर्म का इस्तेमाल साजिश के लिए किया जा सके। ऑक्टेव में टाइप किए गए एक्वाटर्म को जन्नत में स्थापित करने और एकीकृत करने के बजाय setenv GNUTERM x11:। इसके साथ, प्लॉट्स x11 के साथ उत्पन्न होते हैं जो पहले से ही gnuplot ( set terminal) की टर्मिनल सूची में है । मुझे पता है कि यह एक पैच है, लेकिन अंत में मुझे एक्वाटर या एक्स 11 से कोई आपत्ति नहीं है, मैं सिर्फ प्लॉट जेनरेट करना चाहता हूं


1
धन्यवाद, आपका जवाब मुझे मदद करने के बाद मैंने कम से कम आधा दर्जन अलग-अलग समाधानों की कोशिश की
किम स्टैक

2
यदि लिनक्स मिंट 16 को चलाने के लिए आपको gnuplot-x11 को स्थापित करने की आवश्यकता हो सकती है। sudo apt-get install gnuplot-x11 तब करें जैसा कि PGreen ने कहा, मैंने पाया कि मेरी गोपनीय फाइल /etc/octave.conf पर थी। उम्मीद है की वो मदद करदे।
user1153623

24

set terminalया set termgnuplot कमांड है।

आपको केवल gnuplotgnuplot शेल तक पहुंचने के लिए कमांड लाइन से चलने की आवश्यकता है ।

बहरहाल, यह मेरे लिए काम नहीं किया, न ही किया setenv("GNUTERM","x11")में /usr/local/share/octave/site/m/startup/octavercया ~/.octaverc(दोनों एक ही बात करते हैं)।

इसलिए मैं set termgnuplot शेल में भागा क्योंकि x11सूची में कोई नहीं था। मैंने gnuplot को स्थापित करने के लिए homebrew का उपयोग किया है, इसलिए मैंने पहले इसे अनइंस्टॉल किया brew uninstall gnuplot, फिर उसके लिए ध्वज x11का उपयोग करके स्थापित किया --with-x:

brew install gnuplot --with-x

इससे मेरे लिए समस्या हल हो गई। brew info gnuplotGnuplot स्थापना के लिए झंडे की सूची देखने के लिए उपयोग करें ।

PS और हाँ, मैंने एक X11 dmg डाउनलोड किया और पैकेज इंस्टॉलर का उपयोग करके इसे स्थापित किया, फिर भी समर्थित टर्मिनलों की सूची में gnuplot का कोई x11 नहीं था।


2
बहुत मददगार। ध्यान दें कि ग्राफिक्स क्यूटी या WxWindows टर्मिनलों का उपयोग करके मुझे क्लीनर लगता है, जिसे क्रमशः --qtऔर --wxकाढ़ा स्थापित विकल्पों का उपयोग करके स्थापित किया जा सकता है ।
ब्रायन पी

1
इसके बजाय brew install gnuplot --with-x, उपयोग करें brew reinstall gnuplot --with-x11(यदि gnuplot पहले से ही स्थापित है; - साथ x अब समर्थित नहीं लगता है)
तुषार

10

आप यह कोशिश कर सकते हैं:

>> brew reinstall gnuplot --with-aquaterm

या

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

कुछ और स्पष्टीकरण का उपयोग कर सकता है।
जेन्स

3
सलाह दी जाती है कि आपको वास्तव में gnuplot को पुनर्स्थापित करने से पहले एक्वाटर्म स्थापित करने की आवश्यकता है। aquaterm.github.io
ली

with-aquatermअब कोई gnuplot के लिए एक मान्य विकल्प है: github.com/Homebrew/homebrew-core/issues/46923
Ty Hitzeman

8

.octavercअपने घर निर्देशिका में एक फ़ाइल बनाएँ और GN11M को X11 पर सेट करें

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

ऑक्टेव टर्मिनल खोलें और sombreroयह जांचने के लिए टाइप करें कि क्या प्लॉटिंग काम करता है

octave:1> sombrero

6

यह मेरे लिए काम किया:

  1. यूनस्टॉल gnuplot

    शराब की भठ्ठी स्थापना रद्द gnuplot

  2. AquaTerm स्थापित करें। आप इसे यहाँ से डाउनलोड कर सकते हैं: http://sourceforge.net/projects/aquaterm/

  3. Gnuplot को पुनर्स्थापित करें

    काढ़ा स्थापित gnuplot


यदि आप अभी भी "सेगमेंटेशन फॉल्ट: 11" और "उपयुक्त फ़ॉन्ट लोड करने में असमर्थ" हो रहे हैं, तो ये कमांड मेरे लिए काम करते हैं: brew uninstall fontconfig && brew install fontconfig --universal
जूलियन

6

एंटोन सही है। अब आप केवल -wat-aquaterm विकल्प के साथ gnuplot को पुनर्स्थापित कर सकते हैं। अगर मैं इसे करने के लिए पर्याप्त प्रतिष्ठा अंक था, तो मैं उसका जवाब दूंगा।

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

मैककंटु ने ऊपर उल्लेख किया है कि इस मुद्दे पर चर्चा की गई है।

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

लेकिन उन्होंने विकल्प का उपयोग करने की सलाह दी - ऑक्वाटर्म। यदि आप गिथब लिंक पर एक करीब से नज़र डालेंगे तो आप देखेंगे कि विकल्प --wat-aquaterm है। इस विकल्प के साथ gnuplot को पुनः स्थापित करने से आज मुझे कुछ पुराने ऑक्टेव कोड चलाने की अनुमति मिली जो OS X पर रेखांकन के लिए gnuplot का उपयोग करता है।


5

मेरे पास एक जवाब है जो आपको मिल रही समस्या को हल करना चाहिए। अनिवार्य रूप से, मेरे लिए समस्या यह थी कि gnuplot बिल्ड ने उचित AquaTerm पुस्तकालयों का पता नहीं लगाया था। मेरे द्वारा की गई पोस्ट देखें:

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


1
आपके समाधान के लिए धन्यवाद! :)
पीजीएन

4

मेरे मामले में, मास ओएस मोजावे पर, मेरे लिए काम करने वाला समाधान थोड़ा अलग था (यह केवल सिंटैक्स की बात हो सकती है)। इस थ्रेड पर चर्चा के बाद मैं उस समाधान के साथ आया जो मेरे लिए काम करता था - यह ध्यान रखना महत्वपूर्ण हो सकता है कि मेरे लिए ऑक्टेव-क्ली से प्लॉट करना संभव था, लेकिन सीधे टर्मिनल में ऑक्टेव कमांड लाइन से नहीं।

इसलिए मैंने एक ˜/.octavercफ़ाइल बनाई और उसमें निम्न कमांड जोड़ी:

setenv GNUTERM qt

बस ओक्टेव से कमांड लाइन छोड़ दी और फिर से प्रवेश किया और साजिश करने में सक्षम था।


4

मेरे लिए काम करने के बाद:

setenv("GNUTERM","qt")

आप इसे या तो ओक्टेव क्ली पर चला सकते हैं, स्थानीय रन के लिए या स्थायी के लिए ऑक्टेव स्टार्टअप फाइल में सेट कर सकते हैं।

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

बस याद रखें कि जब आप ओक्टेवेर फ़ाइल बदलते हैं तो आपको उस पर लिखने की अनुमति होनी चाहिए।


2

मेरे लिए जो काम किया है वह gnuplot-nox स्थापित कर रहा है। इसके अलावा https://bugs.mageia.org/show_bug.cgi?id=4866 देखें

Gnuplot-nox को स्थापित करने का सबसे अच्छा तरीका लगता है कि fink इंस्टॉल करना है। http://sourceforge.net/projects/fink/?source=dlp

fink install gnuplot-nox

एक अच्छा काम करने लगता है। हालाँकि स्थापना एक बिंदु पर विफल रही थी। इसलिए मैंने gnuplot- न्यूनतम स्थापित किया फिर gnuplot-nox फिर से स्थापित किया और सब कुछ ठीक काम किया।

fink install gnuplot-minimal
fink install gnuplot-nox

gnuplot-nox स्थापित करने से ऐसा लगता है कि gnuplot के लिए डिफ़ॉल्ट टर्मिनल के रूप में एक्वा सेट है। सत्यापित करें कि gnuplot शेल पर जाकर। यह सत्यापित करने के लिए कि प्लॉटिंग काम करता है, शेल में प्लॉट (1) टाइप करें। यह एक विंडो में प्लॉट दिखाना चाहिए।

उम्मीद है वह आप के काम आएगा।

अन्य पोस्ट में सुझाव दिया गया है, GN11M को X11 पर सेट करने से मेरे लिए यह समस्या हल नहीं हुई। मैक ओएसएक्स के लिए एक्वाटर्म को सीधे स्थापित करना भी इस समस्या को हल नहीं करता है।


2

जवाब पहले से ही ऊपर में निहित है, लेकिन यह आसान है मुझे लगता है:

nano ~/.octaverc

इसे जोड़ो:

setenv("GNUTERM", "X11")

आपके द्वारा किए गए ऑक्टेव को पुनः आरंभ करता है।


0

यहाँ समाधान है कि मेरे लिए काम किया है (mackuntu टिप्पणी के विभिन्न भागों पर आधारित)

Gnuplot शायद आपके लिए पहले से ही स्थापित किया हुआ काढ़ा ओक्टेव कमांड द्वारा स्थापित है, इसलिए हमें इसे पहले निकालने की आवश्यकता है

brew uninstall gnuplot

फिर एक्वाटर्म स्थापित करना होगा ( http://sourceforge.net/projects/aquaterm/ )

इंस्टॉल पूरा होने के बाद आपको फिर से gnuplot इंस्टॉल करने की आवश्यकता है। यह इसलिए है क्योंकि काढ़ा स्थापित होने के दौरान एक्वाटर्म की उपस्थिति का पता लगाता है और इसके बाद कोई भी जांच नहीं करेगा।

brew install gnuplot --with-aquaterm

यदि आप स्थापित करने के बाद gnuplot लॉन्च करते हैं, तो यह दिखाना चाहिए कि एक्वाटर्म समर्थित है। और ऑक्टेव में सभी ग्राफिक्स काम करेंगे।

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