【问题标题】:Getting a handle for one of the axes in a 2D plot in Octave在 Octave 的 2D 图中获取其中一个轴的句柄
【发布时间】:2020-08-09 15:12:41
【问题描述】:

我正在学习 Octave 的基础知识。 我想获得一个句柄 hax 到 Octave 中二维绘图的一个轴,例如 x 轴。 然后我想用它来设置,例如,该轴的限制,可能在一个以hax 作为参数的函数中。

所以我会(使用正确的字段名称)

function retval = set_axis(hax, limits, label)
   set(hax, 'limits', limits)
   set(hax, 'label', label)
   ...
   retval = ...
endfunction

这无需知道我正在使用哪个特定轴即可工作。

可以这样做吗?怎么样?

【问题讨论】:

  • 'axes' 表示八度音阶不同的东西。在任何情况下,您都可以使用 xlim 函数(或者,axes 图形对象的 xlim 属性)来执行此操作。
  • @TasosPapastylianou - 请参阅已发布的答案。
  • 请注意,axis 也是 octave 中的特定函数(如“axes”)。如果您不想冒着掩盖一般核心函数的风险,可以使用以大写字母开头的变量。

标签: plot octave handle axes


【解决方案1】:

这不是关于如何仅获取其中一个轴的句柄的答案, 但它有助于执行 OP 中描述的示例操作。

至少对于函数 xlimxlabel(以及它的 yz 对应物),可以使用

function y = set_axis_limits_label(hax, axis, axislabel, limits)

    set( hax, [ axis 'label' ], axislabel );
    set( hax, [ axis 'lim' ], limits );

axis 预计会收到'x''y''z'

知道要处理哪个轴的“负担”不在句柄上,而是在要设置的属性名称上。 这不是我认为最干净的,但它确实有效。

【讨论】:

    猜你喜欢
    • 2016-04-09
    • 2011-04-25
    • 1970-01-01
    • 2011-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-09
    • 2015-11-08
    相关资源
    最近更新 更多