Octave-Gnuplot-AquaTerm error: configure terminal aqua título mejorado "Figura 1" ... tipo de terminal desconocido "


136

Instalé Octave y gnuplot a través de Homebrew, y descargué AquaTerm.dmg. Cuando trato de trazar, recibo el siguiente mensaje:

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`

En un terminal de fiesta set terminal, set Terminal, set term, (y lo mismo, seguido de "Aqua" también) etc. da nada. He intentado trazar nuevamente desde octava con el "AquaTerm" ya abierto, pero nada. He intentado trazar directamente desde gnuplot pero el mismo problema. ¿Cómo puedo hacer esto "set terminal aqua"?

El mensaje de inicio de Gnuplot dice " Terminal type set to 'x11'" pero no tengo idea de cómo cambiarlo, los comandos anteriores tampoco funcionaron.

Como AquaTerm no se instaló desde Homebrew, tal vez octave / gnupot no pueda encontrarlo ... pero no tengo idea. ¿Alguna conjetura? ¡Gracias!


¿Qué tiene que ver esto con bash? Se le pide que escriba set terminalgnuplot, no en bash.
n. 'pronombres' m.

1
@nm Intenté en bash porque al escribir rigt "set terminal" después del mensaje (y, por lo tanto, dentro de la octava) me dio un error. Ahora intenté abrir gnuplot y escribir "set terminal" y funcionó, muestra una lista en la que aqua no está allí. Gracias por el enlace! Desde que instalé gnuplot brew, no lo compilé directamente. si descargo y compilo gnuplot fuera de brew, no sé si habrá algún conflicto o problema con la octava ...
PGreen

1
Para usuarios de Linux: intente instalar gnuplot-x11y agregar setenv("GNUTERM","X11")a su ~/.octaverc.
Martin Thoma

setenv("GNUTERM","qt")trabajó para mi.
giapnh

Respuestas:


110

Tuve que agregar setenv("GNUTERM","X11")a OCTAVE_HOME/share/octave/site/m/startup/octaverc(OCTAVE_HOME generalmente es / usr / local) para que funcione de forma permanente.

Solución encontrada y más detalles en: http://www.mac-forums.com/forums/os-x-apps-games/242997-plots-octave-dont-work.html


Si alguna vez quiere revertirlo, el valor original es aqua. octave:1> getenv GNUTERM ans = aqua
DeepSpace101

8
Si no desea actualizar el octaverc global, simplemente cree un archivo ~ / .octaverc e ingrese el comando setenv allí.
Raj

83
Acabo de instalar Octave 3.8.0 en OS X 10.9 (Mavericks), y el paquete Octave parece estar configurado para usar Qt para ventanas (en lugar de aqua o x11) usando gnuplot_qt. Crear un archivo ~ / .octaverc que contenga setenv("GNUTERM","qt")funcionó para mí (gracias @Raj y @nightlyop).
Tomelgin

si usó Homebrew para instalar Octave, encontrará el archivo octaverc en la siguiente ruta:usr/local/Cellar/octave/4.0.0_5/share/octave/site/m/startup/octaverc
Kevin Zhao

3
setenv ("GNUTERM", "qt") me funcionó en Sierra 10.12.6. "x11" no lo hizo.
Trevis Thomas

79

Me he encontrado con un problema similar con Octave-cli, versión 3.8.0, en OS X 10.9.1. Observando cómo Octave-gui todavía podría trazar gráficos, y leyendo la respuesta con octaverc, tengo que trazar para trabajar desde Octave-cli agregando una línea con setenv("GNUTERM","qt")/usr/local/octave/3.8.0/share/octave/ sitio / m / inicio / octaverc

No tuve que volver a instalar gnuplot u otras dependencias.


¡Esto es perfecto! ¡Gracias!
Thomas Ingalls

66
Configurar GNUTERM en qt funcionó para mí (no X11) pero lo puse en mi directorio de inicio (~ / .octaverc) no en el directorio mencionado anteriormente. No sé cuál es la diferencia, pero el directorio de inicio parece ser más neutral en la instalación.
sepans

3
También agregué setenv ("GNUTERM", "qt") a mi directorio de inicio ~ / .octaverc y trazar con octava ahora funciona de maravilla. Gracias
chekkal

Gracias. ¡Funciona para El Capitan!
Rohan

70

Establecer el tipo de terminal en x11 resolvería el problema, pero si desea que AquaTerm funcione con gnuplot, aquí le explicamos cómo:

Primero necesitamos desinstalar la instalación existente de gnuplot, abrir una terminal y ejecutar este comando.

brew uninstall gnuplot

Descargue AquaTerm desde aquí: http://sourceforge.net/projects/aquaterm/ e instálelo como lo haría con cualquier aplicación OSX.

De aquí en adelante, hay dos maneras de hacer feliz a gnuplot con aquaterm, el Método 1 es más fácil, pero no funcionó para mí porque mi instalación de AquaTerm no creó los enlaces simbólicos correctos en / usr / local / lib, el Método 2 es el uno que funcionó para mí, y estoy compartiendo los pasos que tomé para que funcione.

Método 1: simplemente reinstalar gnuplot después de instalar AquaTerm parece solucionar este problema para las personas.

brew install gnuplot

Vaya al paso de verificación para ver si todo funcionó, si no, siga el método 2

Método 2: este método es más avanzado, pero se garantiza que funcione si es paciente.

Esencialmente, gnuplot no puede localizar los archivos de la biblioteca AquaTerm, es por eso que aqua no aparece como una opción de tipo de terminal después de instalar gnuplot. Necesitamos modificar la receta de homebrew para gnuplot para habilitar el soporte de aquaterm, abrir la receta de cerveza para gnuplot escribiendo:

brew edit gnuplot

Y agregue estas líneas como se muestra en este mensaje de confirmación de github, esto habilitará la opción de preparación para que gnuplot incluya aquaterm https://github.com/mxcl/homebrew/issues/14647#issuecomment-21132477

Verifique si existen los enlaces simbólicos adecuados de la biblioteca AquaTerm haciendo estas verificaciones:

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

La primera línea anterior debería devolver algunos archivos * .dylib, la segunda línea anterior debería devolver algunos archivos * .h, si no existen, ejecute estos comandos desde la 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/.

Esto es necesario a veces ya que el instalador de AquaTerm no puede crear los enlaces simbólicos en los lugares correctos debido a problemas de permisos. Una vez que se hayan creado / usr / local / symlinks, reinstale gnuplot de esta manera:

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

¡Verifique que gnuplot pueda ver aquaterm siguiendo los pasos a continuación y conspirando felizmente!


Verifique: gnuplot se configuró con AquaTerm correctamente iniciando gnuplot en la terminal

gnuplot

Escriba esto en el terminal gnuplot

gnuplot> set term

Busca la linea

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

Si ve la línea de arriba, ya está, gnuplot está configurado correctamente y todos están contentos.


Método 2 hasta el final!
Ben Miller

2
FYI: no necesitaba actualizar la receta de gnuplot; simplemente agregando los enlaces simbólicos antes de instalar gnuplot hizo el truco. Parece que se han solucionado los problemas del lado Homebrew. ¡Salud!
Aron

3
brew reinstall gnuplot --aquatermfuncionó como un encanto ... aquaterm ya debe haber sido instalado en ese punto.
Pykler

66
con mi configuración, tuve que hacerlo brew install gnuplot --with-aquaterm; aparentemente la receta de gnuplot para 4.6.6 usa '--with-aquaterm' ahora: no es necesario editar la receta o crear esos enlaces simbólicos, pero sí necesita agregar explícitamente --with-aquaterm al instalar gnuplot.
Mike Sokolov

Gracias por la gran ayuda ... Funcionó bien para mí usando el segundo método
minhas23

47

Encontré una forma de generar las parcelas con octava, aunque no está usando AquaTerm sino x11. El problema era que Octave estaba "obligando" a gnuplot a usar aquaterm para trazar. En lugar de instalar e integrar Aquaterm en gnuplot, en la octava proporcionado: setenv GNUTERM x11. Con esto, los gráficos se generan con x11 que ya está en la lista de terminales de gnuplot ( set terminal). Sé que es un parche, pero finalmente no me importa aquaterm o x11, solo quiero que se generen parcelas


1
Gracias, su respuesta me ayudó después de haber probado al menos media docena de soluciones separadas
Kim Stacks

2
Si ejecuta Linux Mint 16, es posible que necesite instalar gnuplot-x11. sudo apt-get install gnuplot-x11 Luego, haga lo que PGreen dijo, descubrí que mi archivo de configuración estaba en /etc/octave.conf. Espero que ayude.
user1153623

24

set terminalo set termes el comando gnuplot.

Solo necesita ejecutar gnuplotdesde la línea de comandos para obtener acceso al shell gnuplot.

Sin embargo, esto no funcionó para mí, ni el setenv("GNUTERM","x11")in /usr/local/share/octave/site/m/startup/octaverco ~/.octaverc(ambos hacen lo mismo).

Así que corrí set termen gnuplot shell como no vi x11en la lista. Utilicé homebrew para instalar gnuplot, así que primero lo desinstalé brew uninstall gnuplot, luego lo instalé x11usando --with-xflag para eso:

brew install gnuplot --with-x

Esto resolvió el problema para mí. Use brew info gnuplotpara ver la lista de banderas para la instalación de gnuplot.

PD: Y sí, descargué un dmg X11 y lo instalé usando el instalador del paquete, todavía gnuplot no tenía x11 en la lista de terminales compatibles.


2
Muy útil. Tenga en cuenta que los gráficos me parecen más limpios usando los terminales QT o WxWindows, que pueden instalarse (junto con el lado si lo desea) usando las opciones de instalación --qty --wxpreparación respectivamente.
Bryan P

1
En lugar de brew install gnuplot --with-xusar, brew reinstall gnuplot --with-x11(si gnuplot ya está instalado; --with-x parece que ya no es compatible)
Tushar


8

Cree un archivo .octavercen su directorio de inicio y configure GNUTERM en X11

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

Abra el terminal de octava y escriba sombreropara verificar si el trazado funciona

octave:1> sombrero

6

Esto funcionó para mí:

  1. Desinstalar gnuplot

    brew desinstalar gnuplot

  2. Instalar AquaTerm. Puede descargarlo desde aquí: http://sourceforge.net/projects/aquaterm/

  3. Vuelva a instalar gnuplot

    instalar brebaje gnuplot


Si todavía recibe "Falla de segmentación: 11" e "no se puede cargar la fuente adecuada", estos comandos funcionaron para mí: brew uninstall fontconfig && brew install fontconfig --universal
Julián

6

Anton tiene razón. Ahora puede reinstalar gnuplot con la opción --with-aquaterm. Votaría su respuesta si tuviera suficientes puntos de reputación para hacerlo.

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

Mackuntu mencionó anteriormente que este tema se ha discutido en github.

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

Pero aconsejó usar la opción --aquaterm. Si observa de cerca el enlace de Github, verá que la opción es --with-aquaterm. Reinstalar gnuplot con esta opción hoy me permitió ejecutar un código de octava antiguo que usa gnuplot para trazar gráficos en OS X.



4

En mi caso, en Mas OS Mojave, la solución que funcionó para mi fue ligeramente diferente (podría ser solo una cuestión de sintaxis). Después de la discusión sobre este hilo , llegué con la solución que funcionó para mí: podría ser importante tener en cuenta que me fue posible trazar desde Octave-cli pero no desde la línea de comandos de Octave directamente en la terminal.

Así que creé un ˜/.octavercarchivo y le agregué el siguiente comando:

setenv GNUTERM qt

Simplemente salí de la línea de comando desde la octava y volví a ingresar y pude trazar.


4

Lo siguiente funcionó para mí:

setenv("GNUTERM","qt")

Puede ejecutarlo en el cli de octava, para ejecución local o puede configurarlo en el archivo de inicio de octava para permanente.

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

Solo recuerde que si cambia el archivo octaverc, debe tener permisos de escritura.


2

Lo que me ha funcionado es instalar gnuplot-nox. Ver también https://bugs.mageia.org/show_bug.cgi?id=4866

Parece que la mejor manera de instalar gnuplot-nox es instalar fink. http://sourceforge.net/projects/fink/?source=dlp

fink install gnuplot-nox

Parece hacer un buen trabajo. Sin embargo, la instalación estaba fallando en un punto. Así que instalé gnuplot-minimal, luego ejecuté gnuplot-nox install nuevamente y todo funcionó bien.

fink install gnuplot-minimal
fink install gnuplot-nox

La instalación de gnuplot-nox parecía haber configurado a aqua como el terminal predeterminado para gnuplot. Verifique eso yendo a gnuplot shell. Para verificar si el trazado funciona, escriba plot (1) en el shell. Debería mostrar la trama en una ventana.

Espero que eso te funcione.

Como se sugirió en otras publicaciones, configurar GNUTERM en X11 no resolvió este problema para mí. La instalación directa de AquaTerm para Mac OSX no resolvió este problema.


2

La respuesta ya está contenida en lo anterior, pero creo que esto es más simple:

nano ~/.octaverc

Agrega esto:

setenv("GNUTERM", "X11")

Eso es reiniciar octava que haya terminado.


0

Aquí está la solución que funcionó para mí (basada en diferentes partes del comentario de mackuntu)

Probablemente Gnuplot ya esté instalado para usted mediante el comando brew install octave, por lo que primero debemos eliminarlo

brew uninstall gnuplot

Luego se debe instalar aquaterm ( http://sourceforge.net/projects/aquaterm/ )

Una vez completada la instalación, debe instalar gnuplot nuevamente. Esto se debe a que brew detecta la presencia de aquaterm durante la instalación y no realizará ninguna comprobación después.

brew install gnuplot --with-aquaterm

Si inicia gnuplot después de la instalación, debería mostrar que aquaterm es compatible. Y todos los gráficos en octava funcionarán.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.