【问题标题】:How to make errorbars with perpendicular line ends in octave如何在八度音阶中制作垂直线端的误差线
【发布时间】:2016-08-02 01:42:09
【问题描述】:

我有一个关于八度音阶误差条的问题。我正在尝试将我的测量结果绘制在一个图中:

errorbar(m, my,ex, '>d')

它几乎显示了我想要的,除了一件事,但请在附录中的图片中进行近似描述enter image description here

我想在线的末端有垂直线的误差线 就像这张照片: https://www.math.ubc.ca/~israel/advisor/advisor5/images/h4r3.gif

谁能给个提示?

谢谢!

【问题讨论】:

    标签: octave errorbar


    【解决方案1】:

    如果我输入八度:

    x = 1:10;
    y = x.^2;
    mx = (x/1.5).^-1;
    errorbar (x,y,mx,'>d')
    axis([-1,10,0,100]);
    

    我明白了:
    就像你想要的图片一样。我没有像你那样得到尖括号。

    编辑:如果您要求的是更高,您可以使用以下“hack”来做到这一点:

    c = get(gca,'children'); c = get(c,'children')(2);
    ydata = get(c,'ydata');
    ydata(4:9:end) = ydata(4:9:end) - 5;  % '5' is the value to raise by
    ydata(5:9:end) = ydata(5:9:end) + 5;
    ydata(7:9:end) = ydata(7:9:end) - 5;
    ydata(8:9:end) = ydata(8:9:end) + 5;
    set(c,'ydata',ydata)
    

    【讨论】:

    • 注意:我使用了get(gca,'children'),因为这是我工作区中唯一的情节。将误差线图的句柄收集到变量中并使用它会更安全,即h = errorbar(<bla bla>),然后是c = get(h,'children')
    • 首先感谢您的回答!我只尝试了你的第一个代码并得到了相同的结果。我不明白为什么它不进入我的代码
      a
    • 我想发布我的代码,但我不能把它做成代码块。
    • @Perilun 用它更新您的问题。要插入“代码块”,只需在每行前面添加 4 个空格,并确保代码块的顶部和下方都有空白空间,将其与周围的文本分开。
    猜你喜欢
    • 2012-12-22
    • 1970-01-01
    • 1970-01-01
    • 2014-11-06
    • 2021-03-07
    • 1970-01-01
    • 1970-01-01
    • 2021-09-16
    • 1970-01-01
    相关资源
    最近更新 更多