Octave-Gnuplot-AquaTerm错误:设置终端aqua增强标题“图1”......未知终端类型“

问题描述 投票:133回答:15

我通过Homebrew安装了Octave和gnuplot,并下载了AquaTerm.dmg。当我尝试绘图时,我收到以下消息:

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`

在一个bash终端set terminalset Terminalset term,(以及同样,其次是“aqua”)等也没有给出任何东西。我已经尝试从八度音阶再次绘制“AquaTerm”已经打开,但没有。我已经尝试直接从gnuplot绘图,但同样的问题..我怎么能这样做“设置终端aqua”?

Gnuplot开始消息说“Terminal type set to 'x11'”,但不知道如何更改它,以前的命令也不起作用。

由于AquaTerm没有从Homebrew安装,也许octave / gnupot找不到它......但不知道。有什么猜测?谢谢!

terminal gnuplot x11 octave homebrew
15个回答
108
投票

我不得不将setenv("GNUTERM","X11")添加到OCTAVE_HOME/share/octave/site/m/startup/octaverc(OCTAVE_HOME通常是/ usr / local)以使其永久工作。

解决方案发现和更多细节:http://www.mac-forums.com/forums/os-x-apps-games/242997-plots-octave-dont-work.html


5
投票

我有一个答案可以解决你遇到的问题。从本质上讲,问题是gnuplot构建没有找到合适的AquaTerm库。看看我发的帖子:

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


3
投票

就我而言,在Mas OS Mojave上,适用于我的解决方案略有不同(可能只是语法问题)。在讨论之后on this thread我找到了适用于我的解决方案 - 可能需要注意的是,我可以直接在终端中从Octave-cli而不是Octave命令行进行绘图。

所以我创建了一个˜/.octaverc文件并添加了以下命令:

setenv GNUTERM qt

只需从八度音阶退出命令行并再次输入并能够绘制。


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-minimal然后再次运行gnuplot-nox安装,一切正常。

fink install gnuplot-minimal
fink install gnuplot-nox

gnuplot-nox install似乎已将aqua设置为gnuplot的默认终端。通过转到gnuplot shell验证。要验证绘图是否有效,请在shell中键入plot(1)。它应该在窗口中显示情节。

希望对你有用。

与其他帖子中的建议一样,将GNUTERM设置为X11并不能解决这个问题。直接安装适用于Mac OSX的AquaTerm也无法解决此问题。


2
投票

答案已包含在上面,但我认为这更简单:

nano ~/.octaverc

添加这个:

setenv("GNUTERM", "X11")

多数民众赞成重启八度,你完成了。


1
投票

以下事情对我有用:

setenv("GNUTERM","qt")

你可以在octave cli上运行它,进行本地运行,也可以在octave启动文件中设置为永久运行。

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

请记住,如果您更改octaverc文件,则必须具有写入权限。


0
投票

这是适合我的解决方案(基于mackuntu评论的不同部分)

可能已经通过brew install octave命令为您安装了Gnuplot,因此我们需要先将其删除

brew uninstall gnuplot

然后必须安装aquaterm(http://sourceforge.net/projects/aquaterm/

安装完成后,您需要再次安装gnuplot。这是因为brew在安装过程中检测到aquaterm的存在,之后不会对其进行任何检查。

brew install gnuplot --with-aquaterm

如果在安装后启动gnuplot,则应显示支持aquaterm。八度音阶中的所有图形都可以使用。


75
投票

在OS X 10.9.1上,我遇到了Octave-cli版本3.8.0的类似问题。观察Octave-gui如何仍然可以绘制图表,并通过octaverc读取答案,我已经通过在/usr/local/octave/3.8.0/share/octave添加setenv("GNUTERM","qt")一行来从Octave-cli开始工作/站点/米/启动/ octaverc

我没有必要重新安装gnuplot或其他依赖项。


70
投票

将终端类型设置为x11可以解决问题,但是如果你想让AquaTerm使用gnuplot,那么如何:

首先,我们需要卸载现有的gnuplot安装,打开终端并运行此命令。

brew uninstall gnuplot

从这里下载AquaTerm:http://sourceforge.net/projects/aquaterm/并像安装任何OSX应用程序一样安装。

从这里开始,有两种方法让gnuplot对aquaterm感到满意,方法1更容易,但是对我来说不起作用,因为我的AquaTerm安装没有在/ usr / local / lib中创建正确的符号链接,方法2是一个对我有用的,我正在分享我为使它工作所采取的步骤。

方法1:安装AquaTerm之后只需重新安装gnuplot似乎可以解决这个问题。

brew install gnuplot

转到验证步骤以查看是否一切正常,如果没有,请按照方法2进行操作

方法2:这种方法更先进,但如果您有耐心,可以保证工作。

基本上gnuplot找不到AquaTerm库文件,这就是为什么在安装gnuplot之后aqua不会显示为终端类型选项的原因。我们需要修改gnuplot的自制软件配方以启用aquaterm支持,通过输入以下内容打开gnuplot的brew配方:

brew edit gnuplot

并添加这些行,如此github提交消息所示,这将使gnuplot的brew选项包括aquaterm https://github.com/mxcl/homebrew/issues/14647#issuecomment-21132477

通过执行以下检查来检查是否存在正确的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/.

这有时是必要的,因为AquaTerm的安装程序由于权限问题而无法在正确的位置创建符号链接。创建/ usr / local / symlinks后,重新安装gnuplot,如下所示:

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

验证gnuplot可以使用以下步骤查看aquaterm并快乐绘图!


验证:通过在终端中启动gnuplot,gnuplot正确配置了AquaTerm

gnuplot

在gnuplot终端中输入

gnuplot> set term

寻找线

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

如果你看到上面那一行,那么你就完成了,gnuplot配置正确,每个人都很开心。


47
投票

我找到了一种生成八度音的情节的方法,虽然不是使用AquaTerm而是使用x11。问题是Octave正在“强迫”gnuplot使用aquaterm进行策划。而不是安装和集成aquaterm到gnuplot,八度键入:setenv GNUTERM x11。这样,使用x11生成绘图,x11已经在gnuplot(set terminal)的终端列表中。我知道这是一个补丁,但最后我不介意aquaterm或x11,我只想生成情节


24
投票

set terminalset term是gnuplot命令。

您只需要从命令行运行gnuplot即可访问gnuplot shell。

然而,这对我来说不起作用,setenv("GNUTERM","x11")/usr/local/share/octave/site/m/startup/octaverc中的~/.octaverc也没有用(两者都做同样的事情)。

所以我在gnuplot shell中运行了set term,因为在列表中看不到x11。我使用自制软件来安装gnuplot,所以我先卸载它brew uninstall gnuplot,然后使用x11标志安装--with-x

brew install gnuplot --with-x

这解决了我的问题。使用brew info gnuplot查看gnuplot安装的标志列表。

附:是的,我确实下载了一个X11 dmg并使用软件包安装程序安装它,仍然gnuplot在支持的终端列表中没有x11。


10
投票

你可以试试这个:

>> brew reinstall gnuplot --with-aquaterm

要么

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

8
投票

在主目录中创建一个文件.octaverc并将GNUTERM设置为X11

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

打开八度音阶终端并键入sombrero以检查绘图是否有效

octave:1> sombrero

6
投票

这对我有用:

  1. Unistall gnuplot brew卸载gnuplot
  2. 安装AquaTerm。你可以从这里下载:http://sourceforge.net/projects/aquaterm/
  3. 重新安装gnuplot brew安装gnuplot

6
投票

安东是对的。您现在可以使用--with-aquaterm选项重新安装gnuplot。如果我有足够的声望点,我会回答他的回答。

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

Mackuntu上面提到这个问题已在github上讨论过了。

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

但他建议使用选项--aquaterm。如果仔细查看github链接,您会看到选项是--with-aquaterm。今天使用此选项重新安装gnuplot允许我运行一些旧的八度代码,该代码使用gnuplot在OS X上绘制图形。

© www.soinside.com 2019 - 2024. All rights reserved.