24小时热门版块排行榜    

查看: 4183  |  回复: 10
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

疾凤劲草

铁杆木虫 (正式写手)

Entertainment

[求助] Matlab绘制误差棒(线)的线宽(起点与终点位置)问题已有2人参与

整个图我是先用matlab的bar函数画的柱状图,然后再用errorbar函数画的误差棒,但是不知道怎么修改误差棒图中误差线的上下限位置的长短,能够调短一点吗?已经超过每组柱状图的宽度了(柱状图的宽度不想再调宽了)
网上搜索有人说在命令窗口键入 type errorbar就能看到matlab自带errorbar函数的代码,然后以下几句代码中控制线的起点与终点位置的tee改一下,自己存为一个函数就行。
tee = (max(x(: ))-min(x(: )))/120;  % make tee .02 x-distance for error bars
xl = x - tee;
xr = x + tee;
可是我把120改成其他数字,然后另存为叫做errorbar(和matlab本身的函数名相同)的m文件存放在和我画图的m文件同一目录下,结果一运行自己的m文件或者该函数本身时就出现如下提示:
Error using errorbar (line 7)
Undefined function 'errorbarHGUsingMATLABClasses' for input arguments of type 'double'.
请问高手,该如何实现上述目标?谢谢!

Matlab绘制误差棒(线)的线宽(起点与终点位置)问题
误差棒图.png
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : errorbar.m
  • 2017-01-08 15:55:39, 6.37 K

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pdl9527

专家顾问 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
疾凤劲草: 金币+8, ★★★★★最佳答案 2017-01-09 17:28:16
首先下载superbar工具箱,解压后添加文件夹及其子文件夹到maltab文件路径下,下载地址如下。
CODE:
http://nl.mathworks.com/matlabcentral/fileexchange/57499-superbar

举个栗子,改变cap_width的值可以得到不同的errorbar横线宽度。
CODE:
function question_18
%2017-1-8
clear;clc
x = 0:pi/10:pi;
y = sin(x);
er = y/10;
cap_width=0.2;
supererr(x, y, [],er',cap_width)

3楼2017-01-08 18:17:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 11 个回答

chendequan

铁虫 (小有名气)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
疾凤劲草: 金币+2, ★★★很有帮助 2017-01-09 16:03:53
直接改自带的后保存不会报错,不过没看到啥变化
QQ:516477448,真心帮助解决MATLAB相关问题,提供详细资料,Word文档明确具体问题及要求,尽力而为!
2楼2017-01-08 16:19:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

疾凤劲草

铁杆木虫 (正式写手)

Entertainment

引用回帖:
2楼: Originally posted by chendequan at 2017-01-08 16:19:28
直接改自带的后保存不会报错,不过没看到啥变化

是的,我是直接用edit errorbar,把内置函数源文件中那个分母从最初的100改成了120 150 500 保存后运行画图程序都没有用,难道这个不是控制误差线起始点的?
4楼2017-01-09 16:05:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

疾凤劲草

铁杆木虫 (正式写手)

Entertainment

引用回帖:
3楼: Originally posted by pdl9527 at 2017-01-08 18:17:44
首先下载superbar工具箱,解压后添加文件夹及其子文件夹到maltab文件路径下,下载地址如下。
http://nl.mathworks.com/matlabcentral/fileexchange/57499-superbar
举个栗子,改变cap_width的值可以得到不同的err ...

我已经修改成功了,把你的下载下来了,而且不再用errorbar,而是改用supererr函数就行了,而且我的m文件目录下只需要放你给的superbar.m和supererr.m这两个文件。
另外问一下,您最后一句代码中,[]对应的项目表示啥参数输入?给个空的中括号是表示不赋值吗?
5楼2017-01-09 17:30:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见