Octave 有没有办法使用TeX(希腊字母、下标、上标等)使八度音解释uicontrol静态文本中的字符串?

Octave 有没有办法使用TeX(希腊字母、下标、上标等)使八度音解释uicontrol静态文本中的字符串?,octave,tex,subscript,uicontrol,Octave,Tex,Subscript,Uicontrol,我正在用GNUOctave(5.1.0)编写GUI。它应该读取一些输入值,进行一些计算,绘制一些图表并写出结果。除了uicontrol显示未解释的给定字符串(希腊字母、下标、上标等)这一不必要的事实之外,一切都很好。有没有办法改变这一点 我已尝试在uicontrol内指定解释器: uicontrol ("parent", p, "style",'text', "string", ["\beta Q_v [m^3/s]"],'interpreter','tex']); 但文档中没有列出此类属性,

我正在用GNUOctave(5.1.0)编写GUI。它应该读取一些输入值,进行一些计算,绘制一些图表并写出结果。除了uicontrol显示未解释的给定字符串(希腊字母、下标、上标等)这一不必要的事实之外,一切都很好。有没有办法改变这一点

我已尝试在uicontrol内指定解释器:

uicontrol ("parent", p, "style",'text', "string", ["\beta Q_v [m^3/s]"],'interpreter','tex']);
但文档中没有列出此类属性,因此难怪我会出现以下错误:

错误:设置:未知的uicontrol属性解释器

同时,我已使用UTF-8 ASCII码(在本例中为字母beta)将希腊字母插入显示的文本中:

那很好。但是,变量及其单位的显示方式与它们在代码中的写入方式相同(没有下标,也没有上标),这看起来有点傻,最重要的是它会占用空间


自从我开始编写这个GUI(2017年左右)以来,我一直在互联网上搜索,但运气不好。似乎从来没有人遇到过这种麻烦,这对我来说很奇怪。我错过什么了吗?任何帮助都将不胜感激

在倍频程和Matlab中都没有这样的选项。但是,Pantxo建议了一种变通方法,可以找到。诀窍是“使用适当的文本对象伪造文本样式uicontrol”

简言之,必须更换:

    uicontrol ("parent", p, "style",'text', "string", ...
    [char([206 178]) " Q_v[m^3/s]"], "position", [x0 y0 dx dy]);


我们必须稍微调整一下字体大小等,但结果非常令人满意。

无论是在倍频程还是在Matlab中都没有这样的选项。但是,Pantxo建议了一种变通方法,可以找到。诀窍是“使用适当的文本对象伪造文本样式uicontrol”

简言之,必须更换:

    uicontrol ("parent", p, "style",'text', "string", ...
    [char([206 178]) " Q_v[m^3/s]"], "position", [x0 y0 dx dy]);

人们不得不在字体大小等方面做一些调整,但结果非常令人满意

    hax = axes ("parent", p,"visible", "off", "position", [0 0 1 1]); 
    text ("parent", hax, "units", "pixels", "position", [x0 y0 0], ... 
    "interpreter", "tex", "string", "\\beta Q_v[m^3/s]", ... 
    "backgroundcolor", "none");