Saya telah menginstal Octave dan gnuplot melalui Homebrew, dan mengunduh AquaTerm.dmg. Ketika saya mencoba plot, saya mendapatkan pesan berikut:
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`
Dalam terminal pesta set terminal
, set Terminal
, set term
, (dan sama, diikuti oleh "aqua" juga) dll memberikan apa-apa. Saya sudah mencoba memplot lagi dari oktaf dengan "AquaTerm" sudah terbuka, tapi tidak ada. Saya sudah mencoba merencanakan langsung dari gnuplot tetapi masalah yang sama .. Bagaimana saya bisa melakukan ini "set terminal aqua"?
Pesan awal Gnuplot mengatakan " Terminal type set to 'x11'
" tetapi tidak tahu cara mengubahnya, perintah sebelumnya juga tidak berfungsi.
Karena AquaTerm tidak diinstal dari Homebrew mungkin oktaf / gnupot tidak dapat menemukannya ... tetapi tidak tahu. Ada tebakan? Terima kasih!
set terminal
gnuplot, bukan bash.brew
saya tidak mengkompilasinya secara langsung. jika saya mengunduh dan mengkompilasi gnuplot di luar minuman tidak tahu apakah akan ada konflik atau masalah dengan oktaf ...gnuplot-x11
dan tambahkansetenv("GNUTERM","X11")
ke~/.octaverc
.setenv("GNUTERM","qt")
bekerja untuk saya.Jawaban:
Saya harus menambahkan
setenv("GNUTERM","X11")
keOCTAVE_HOME/share/octave/site/m/startup/octaverc
(OCTAVE_HOME biasanya / usr / local) untuk membuatnya berfungsi secara permanen.Solusi ditemukan dan detail lebih lanjut di: http://www.mac-forums.com/forums/os-x-apps-games/242997-plots-octave-dont-work.html
sumber
aqua
.octave:1> getenv GNUTERM ans = aqua
setenv("GNUTERM","qt")
berhasil untuk saya (terima kasih @Raj dan @nightlyop).usr/local/Cellar/octave/4.0.0_5/share/octave/site/m/startup/octaverc
Saya mengalami masalah serupa dengan Octave-cli, versi 3.8.0, di OS X 10.9.1. Mengamati bagaimana Octave-gui masih bisa memplot grafik, dan membaca jawabannya dengan octaverc, saya telah merencanakan untuk bekerja dari Octave-cli dengan menambahkan baris
setenv("GNUTERM","qt")
ke /usr/local/octave/3.8.0/share/octave/ situs / m / startup / octavercSaya tidak perlu menginstal ulang gnuplot atau dependensi lainnya.
sumber
Mengatur tipe terminal ke x11 akan menyelesaikan masalah, tetapi jika Anda ingin AquaTerm bekerja dengan gnuplot, berikut caranya:
Pertama kita perlu menghapus instalasi gnuplot yang ada, buka terminal dan jalankan perintah ini.
Unduh AquaTerm dari sini: http://sourceforge.net/projects/aquaterm/ dan instal seperti yang Anda lakukan pada aplikasi OSX lainnya.
Dari sini, ada dua cara untuk membuat gnuplot senang dengan aquaterm, Metode 1 lebih mudah, tetapi tidak berhasil untuk saya karena instalasi AquaTerm saya tidak membuat symlink yang benar di / usr / local / lib, Metode 2 adalah salah satu yang berhasil untuk saya, dan saya membagikan langkah-langkah yang saya ambil untuk membuatnya berfungsi.
Metode 1: Cukup instal ulang gnuplot setelah menginstal AquaTerm tampaknya memperbaiki masalah ini untuk orang-orang.
Pergi ke langkah verifikasi untuk melihat apakah semuanya berfungsi, jika tidak, ikuti metode 2
Metode 2: Metode ini lebih maju, tetapi dijamin berhasil jika Anda sabar.
Pada dasarnya gnuplot tidak dapat menemukan file pustaka AquaTerm, itulah mengapa aqua tidak muncul sebagai opsi tipe terminal setelah kami menginstal gnuplot. Kita perlu memodifikasi resep homebrew untuk gnuplot untuk mengaktifkan dukungan aquaterm, buka resep minuman untuk gnuplot dengan mengetik:
Dan tambahkan baris ini seperti yang ditunjukkan dalam pesan komit github ini, ini akan mengaktifkan opsi pembuatan untuk gnuplot untuk menyertakan aquaterm https://github.com/mxcl/homebrew/issues/14647#issuecomment-21132477
Periksa untuk melihat apakah symlink perpustakaan AquaTerm yang tepat ada dengan melakukan pemeriksaan ini:
Baris pertama di atas harus mengembalikan beberapa file * .dylib, baris kedua di atas harus mengembalikan beberapa file * .h, jika tidak ada, jalankan perintah ini dari 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/.
Ini terkadang diperlukan karena penginstal untuk AquaTerm tidak dapat membuat symlink di tempat yang benar karena masalah izin. Setelah / usr / local / symlinks dibuat, instal ulang gnuplot seperti ini:
Pastikan gnuplot dapat melihat aquaterm menggunakan langkah-langkah di bawah ini dan selamat merencanakan!
Verifikasi: bahwa gnuplot telah dikonfigurasi dengan AquaTerm secara benar dengan meluncurkan gnuplot di terminal
Ketik ini di terminal gnuplot
Cari garisnya
Available terminal types: aqua Interface to graphics terminal server for Mac OS X ...
Jika Anda melihat baris di atas, maka Anda telah selesai, gnuplot dikonfigurasi dengan benar dan semua orang senang.
sumber
brew reinstall gnuplot --aquaterm
bekerja seperti pesona ... aquaterm pasti sudah dipasang pada saat itu.brew install gnuplot --with-aquaterm
; tampaknya resep brew gnuplot untuk 4.6.6 penggunaan '--with-aquaterm' sekarang: tidak perlu mengedit resep atau membuat symlink tersebut, tetapi Anda perlu menambahkan --with-aquaterm secara eksplisit saat menginstal gnuplot.Saya menemukan cara untuk menghasilkan plot dengan oktaf, meskipun tidak menggunakan AquaTerm tetapi x11. Masalahnya adalah bahwa Octave "memaksa" gnuplot menggunakan aquaterm untuk membuat plot. Alih-alih memasang dan mengintegrasikan aquaterm ke gnuplot, di oktaf diketik:
setenv GNUTERM x11
. Dengan ini, plot dibuat dengan x11 yang sudah ada di daftar terminal gnuplot (set terminal
). Saya tahu ini tambalan, tetapi akhirnya saya tidak keberatan aquaterm atau x11, saya hanya ingin plot dibuatsumber
set terminal
atauset term
perintah gnuplot.Anda hanya perlu menjalankan
gnuplot
dari baris perintah untuk mendapatkan akses ke gnuplot shell.Namun, ini tidak berhasil untuk saya, begitu juga di
setenv("GNUTERM","x11")
dalam/usr/local/share/octave/site/m/startup/octaverc
atau~/.octaverc
(keduanya melakukan hal yang sama).Jadi saya menjalankan
set term
shell gnuplot karena tidak melihatx11
dalam daftar. Saya menggunakan homebrew untuk menginstal gnuplot, jadi saya mencopot pemasangannya terlebih dahulubrew uninstall gnuplot
, kemudian menginstal denganx11
menggunakan--with-x
flag untuk itu:brew install gnuplot --with-x
Ini memecahkan masalah saya. Gunakan
brew info gnuplot
untuk melihat daftar flag untuk instalasi gnuplot.PS Dan ya, saya mengunduh X11 dmg dan menginstalnya menggunakan penginstal paket, masih gnuplot tidak memiliki x11 dalam daftar terminal yang didukung.
sumber
--qt
dan--wx
brew install masing-masing.brew install gnuplot --with-x
, gunakanbrew reinstall gnuplot --with-x11
(jika gnuplot sudah diinstal; --with-x tampaknya tidak lagi didukung)Anda dapat mencoba ini:
atau
sumber
with-aquaterm
tidak lagi menjadi pilihan yang valid untuk gnuplot: github.com/Homebrew/homebrew-core/issues/46923Buat file
.octaverc
di direktori home Anda dan setel GNUTERM ke X11echo "setenv('GNUTERM','X11')" > ~/.octaverc
Buka terminal oktaf dan ketik
sombrero
untuk memeriksa apakah penggambaran berfungsioctave:1> sombrero
sumber
Ini berhasil untuk saya:
Unistall gnuplot
Pasang AquaTerm. Anda dapat mengunduhnya dari sini: http://sourceforge.net/projects/aquaterm/
Instal ulang gnuplot
sumber
brew uninstall fontconfig
&&
brew install fontconfig --universal
Anton benar. Anda sekarang dapat menginstal ulang gnuplot dengan opsi --with-aquaterm. Saya akan mendukung jawabannya jika saya memiliki poin reputasi yang cukup untuk melakukannya.
Mackuntu menyebutkan di atas bahwa masalah ini telah dibahas di github.
https://github.com/mxcl/homebrew/issues/14647#issuecomment-21132477
Tetapi dia menyarankan untuk menggunakan opsi --aquaterm. Jika Anda melihat lebih dekat pada tautan github, Anda akan melihat bahwa opsinya adalah --dengan-aquaterm. Menginstal ulang gnuplot dengan opsi ini hari ini memungkinkan saya menjalankan beberapa kode oktaf lama yang menggunakan gnuplot untuk memplot grafik di OS X.
sumber
Saya punya jawaban yang akan menyelesaikan masalah yang Anda hadapi. Pada dasarnya, bagi saya masalahnya adalah bahwa build gnuplot tidak menemukan pustaka AquaTerm yang tepat. Lihat postingan yang saya buat:
http://deveneezer.blogspot.com/2013/06/octave-gnuplot-and-aquaterm.html
sumber
Dalam kasus saya, di Mas OS Mojave, solusi yang berhasil untuk saya sedikit berbeda (bisa jadi hanya masalah sintaks). Setelah diskusi di utas ini saya datang dengan solusi yang berhasil untuk saya - mungkin penting untuk dicatat bahwa saya dapat memplot dari Octave-cli tetapi tidak dari baris perintah Oktaf langsung di terminal.
Jadi saya membuat
˜/.octaverc
file dan menambahkan perintah berikut ke dalamnya:Cukup keluar dari baris perintah dari oktaf dan masuk lagi dan bisa plot.
sumber
Hal berikut berhasil untuk saya:
setenv("GNUTERM","qt")
Anda dapat menjalankannya pada cli oktaf, untuk menjalankan lokal atau dapat mengatur dalam file startup oktaf untuk permanen.
/usr/local/octave/3.8.0/share/octave/site/m/startup/octaverc
Ingatlah jika Anda mengubah file octaverc Anda harus memiliki izin menulis di atasnya.
sumber
Apa yang berhasil bagi saya adalah menginstal gnuplot-nox. Lihat juga https://bugs.mageia.org/show_bug.cgi?id=4866
Sepertinya cara terbaik untuk menginstal gnuplot-nox adalah dengan menginstal fink. http://sourceforge.net/projects/fink/?source=dlp
sepertinya melakukan pekerjaan dengan baik. Namun penginstalan gagal pada satu titik. Jadi saya menginstal gnuplot-minimal lalu menjalankan gnuplot-nox install lagi dan semuanya bekerja dengan baik.
instalasi gnuplot-nox tampaknya telah menetapkan aqua sebagai terminal default untuk gnuplot. Verifikasi itu dengan membuka gnuplot shell. Untuk memverifikasi apakah plotting berhasil, ketik plot (1) di shell. Ini harus menunjukkan plot di jendela.
Harapan itu berhasil untuk Anda.
Seperti yang disarankan di posting lain, mengatur GNUTERM ke X11 tidak menyelesaikan masalah ini untuk saya. Juga menginstal langsung AquaTerm untuk Mac OSX tidak menyelesaikan masalah ini.
sumber
Jawabannya sudah ada di atas, tapi ini lebih sederhana menurut saya:
Tambahkan ini:
setenv("GNUTERM", "X11")
Itu restart oktaf Anda sudah selesai.
sumber
Berikut adalah solusi yang berhasil untuk saya (berdasarkan bagian berbeda dari komentar mackuntu)
Gnuplot mungkin sudah diinstal untuk Anda dengan perintah brew install octave, jadi kita perlu menghapusnya terlebih dahulu
Kemudian aquaterm harus diinstal ( http://sourceforge.net/projects/aquaterm/ )
Setelah penginstalan selesai, Anda perlu menginstal gnuplot lagi. Ini karena brew mendeteksi keberadaan aquaterm selama pemasangan dan tidak akan melakukan pemeriksaan setelahnya.
Jika Anda meluncurkan gnuplot setelah menginstal, itu akan menunjukkan bahwa aquaterm didukung. Dan semua grafik dalam oktaf akan berfungsi.
sumber