【问题标题】:Octave: Subscripts for the text function?Octave:文本函数的下标?
【发布时间】:2020-01-16 01:47:44
【问题描述】:

我正在运行 Octave 5.1.0。我尝试重现此页面上的代码: https://octave.sourceforge.io/octave/function/text.html

例如,我尝试在那里重现 Demonstration 3,即这段代码:

 clf;
 axis ([0 8 0 8]);
 title (["1st title";"2nd title"]);
 xlabel (["1st xlabel";"2nd xlabel"]);
 ylabel (["1st ylabel";"2nd ylabel"]);
 text (4, 4, {"Hello", "World"}, ...
       "horizontalalignment", "center", ...
       "verticalalignment", "middle");
 grid on;

我收到以下错误消息:

text(,,,,,,):下标必须是整数 1 到 (2^63)- 1 或逻辑(注意:变量“文本”阴影函数)

我尝试将代码更改为:

clf;
 axis ([0 8 0 8]);
 title (['1st title';'2nd title']);
 xlabel (['1st xlabel';'2nd xlabel']);
 ylabel (['1st ylabel';'2nd ylabel']);
 text (4, 4, 'Hello','horizontalalignment', 'center','verticalalignment', 'middle');
 grid on;

然后我收到以下错误消息:

text(4...[x6]...):但文本大小为 1x39(注意:可变 'text' 阴影函数)

我对如何解决这个问题感到有些困惑。我也无法使用 text 函数重现其他代码。几周前我开始运行 Octave,所以我的安装以某种方式失败并非不可能。但其他功能按预期工作。

我已经安装了 io 和 statistics 包。他们能以某种方式干扰吗?

谁能弄清楚发生了什么?

【问题讨论】:

标签: text octave


【解决方案1】:

关键在错误信息中:

注意:变量“文本”阴影函数

这意味着您已将“文本”定义为工作区中的变量,并为其分配了一个值。

因此,现在每次您尝试访问 text 函数时,都是在访问您的变量。

清除您的工作区(或只是 text 变量),然后重试。

PS。虽然这不是常规做法,但我个人倾向于以大写字母开头命名所有非函数变量,以避免与函数发生名称冲突,因为 octave 中的大多数函数都以小写字母开头。

一般来说,在为该名称指定某些内容之前,请始终检查该名称是否未被使用,以避免在这种情况下出现“隐藏”。

【讨论】:

  • 谢谢!并感谢有关命名非函数变量的提示!我会用的。
猜你喜欢
  • 2015-12-23
  • 2019-05-29
  • 1970-01-01
  • 2020-10-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多