图片缩略图”itemprop=

boundedline.m

版本1.4.0.0 (478 KB) 凯利卡尼
情节一行或多行阴影边界(可以表示错误,置信区间等)。

69下载

更新2020年6月15日

从GitHub

视图版本历史

查看许可GitHub

编者按:这个文件被选为MATLAB中央选择的

这个函数结合线和补丁对象创建一个“有界线”。这可以与误差范围绘制线条时有用/置信区间等。

更多细节,包括安装说明,语法,和示例,请参阅本文档中包含的README文件通过GitHub(也可见链接)。

引用作为

凯利卡尼(2021)。boundedline.mGitHub (https://github.com/kakearney/boundedline-pkg)。检索

评论和评级(137年)

Wa3id

Rey9

很好的工作!

西蒙Perazzolo

过于复杂的运行。考虑块功能。

loai taouzlak

马德斯詹森

Alvince彭哥

如果我把日志的轴,boundedline()不能画一个阴影边界。例子
x = linspace(0, 2 *π,50);
日元= sin (x);
y2 = cos (x);
e1 =兰德(大小(y1)) * 5 + 5;
e2 = [。25 5];
boundedline(日志(x)、y3 e3,“α”);

巴勃罗Trucco

马里奥

伟大的功能,非常感谢!

Abdelrahman Rayan

克里斯汀•陈

你好!我处理timeseries数据的误差范围在给定的时间将与另一个给定时间的误差范围重叠。当我使用这个函数,这些重叠的地方不出现,导致一个非常、阴影区域寻找错误。会有人愿意帮助我在这个问题上?真诚,一个绝望的博士生!

瑞安Tumminello

明宇肖

Serkan居尔

伟大的功能,谢谢。

Amneh Alshawabka

杰出的工作,非常感谢:)

挪亚斯坦顿

啊nvm,发现它在文件夹…我的坏!

Cuiqi张

vaibhav辛格

谁能帮助错误下标赋值尺寸不匹配。

错误Fig_1a(第64行)
(r, h (c)) = boundedline (x, cum_regret 10(“-”,颜色(c)));

南丹•潘迪特

优秀的工作,容易使用。强烈推荐。

保罗·帕卡德

这是伟大的!我唯一的问题是,当我将数据保存到PDF和放进adobe illustrator,边界宽度(标准误差)是由大量的三角形。这些三角形的边界显示为白线在有界区域。有什么办法可以摆脱这些吗?可能有一个快速和简单的方法,但是我不知道如何。谢谢!

米甲Szkup

郝陆

幕斯塔法Bennai

乔恩·埃里克森

小常

莎拉·布卢姆

美丽的功能,非常感谢!
每个人正在经历这个错误的inpaint_nans ():
错误使用。*
稀疏的单不支持数组算术运算。金宝app

它可以通过将输入转换为双固定:https://de.mathworks.com/matlabcentral/answers/11985-inpainting_nans-by-john-d-errico-error-message

索菲娅冯

丹尼尔Seara

对于那些想要改变标记的大小之类的(像我一样),关键是要用直线图处理,输出。例如:

(hl ~) = boundedline (x, y,呃,'。');
霍奇金淋巴瘤。MarkerSize = 20;

只给4星无法用一行。否则完美!

CH

嗨,有可能只有情节标准差(e),不意味着线(y)。

ettelephonne

嗨,凯莉。非常感谢你的函数。像Maulik沙,我想知道如果有一种方法来改变“markersize”谢谢

我可以用这个nan吗?

Jeongho金

Maulik沙

优秀的实用程序!有办法控制标志的大小吗?

埃里克了卡鲁斯

adajaga

基本工具!有可能更高和下界分别设置?我很少使用均匀分布数据和显示百分位数。

浙江

dbgtjp
2011年10月7日

优秀的工作。
如果任何人想要避免补丁出现在传说只是314行之后添加以下代码。

集(get (get(惠普(iln),“注释”),“LegendInformation”),“IconDisplayStyle”,“关闭”);

这就可以了。

它应该是在第351行。

海因德箍

NeuroMat

这似乎是一个非常有用的功能。不幸的是,当我试图使用boundedline命令使用下面的输入参数
X = 1 x4100包含轴点的两倍
Y = 1 x4100单包含Y的值
S = 4100 x1单包含为每个值y SD在所有参与者对y值贡献
h1 = boundedline (X, Y,年代,“处方”,“南”,“填满”);
我得到错误的
“错误使用*
MTIMES(*)不支持一个稀疏的参金宝app数,一个参数。

错误inpaint_nans(第394行)

错误boundedline > calcpatch(第451行)
yp {2} = inpaint_nans (yp {2}’, 4);

错误boundedline(第319行)
(xp {iln}, yp {iln}] = calcpatch (plotdata {iln 1}, plotdata {iln 2}, isvert, plotdata {iln 6}, plotdata {iln 7}, nanflag);

大小(S, 2) = = 1,根据意义的帮助”的界限将两边对称线”和大小(年代,3)= = 1,意思是“相同的边界将被应用到所有行前面所描述的x - y数组”,这就是我们想要实现。如果我们反S S '我们得到同样的错误。谁能帮助这个错误是什么意思和如何避免吗?
提前谢谢你!

Yongjun王

凯利卡尼

@Devyani,

我刚刚更新该条目包括略好README文件,连同几个例子描述的安装和使用。完整的语法细节(一直)可以通过函数头,通过命令的帮助。你不需要合并的文件;一定要指定的文件夹添加到您的Matlab的道路。

Devyani

我无法使用它。没有合适的阅读我的文件。如果我使用boundedline函数文件夹然后错误
未定义的函数或变量“inpaint_nans”。
如果我合并文件夹中的所有文件,然后没有任何阴谋。
你能请帮助。

阿曼达·保尔森

Neurosc

凯利卡尼

@Maite穆尼奥斯,

我认为这将是更容易进行预处理数据而不是修改boundedline函数。楼梯函数使这很简单;它可以返回线的坐标对象,它的情节。这里有一个例子比较errorbar阴谋,boundedline情节,和stairs-style boundedline情节:

x = linspace(40 0 4 *π);
y = sin (x);
ci =兰德(大小(y)) * 0.3;

次要情节(1,1);
errorbar (x, y, ci);

次要情节(3、1、2);
boundedline (x, y, ci);

[xx, yy] =楼梯(x, y);
[~,cici] =楼梯(x, ci);

次要情节(3,1,3);
boundedline (xx, yy, cici);

Maite穆尼奥斯

你好,我使用这个函数但我想阴谋的结果作为一个楼梯图而不是直系的(https://es.mathworks.com/help/matlab/ref/stairs.html)。
因为我不知道很多关于matlab,我不知道如何开始……我想我需要修改这部分的代码?
在线=大小(plotdata, 1);
[xl, yl, xp, yp,标记,lnsty, lncol, ptchcol,α]=交易(细胞(在线,1));

iln = 1:在线
xl {iln} = plotdata {iln 1};
yl {iln} = plotdata {iln 2};
%如果isvert
% xp {iln} = [plotdata {iln 1} fliplr (plotdata {iln, 1}));
% yp {iln} = [plotdata {iln 6} fliplr (plotdata {iln 7}));
其他的%
% xp {iln} = [plotdata {iln 6} fliplr (plotdata {iln 7}));
% yp {iln} = [plotdata {iln 2} fliplr (plotdata {iln 2}));
%结束

(xp {iln}, yp {iln}] = calcpatch (plotdata {iln 1}, plotdata {iln 2}, isvert, plotdata {iln 6}, plotdata {iln 7}, nanflag);

标记{iln} = plotdata {iln 3};
lnsty {iln} = plotdata {iln 4};

如果usealpha
lncol {iln} = plotdata {iln 5};
ptchcol {iln} = plotdata {iln 5};
α{iln} =反式;
其他的
lncol {iln} = plotdata {iln 5};
ptchcol {iln} = interp1 ([0 1]、[1 1 1;lncol {iln}),反式);
α{iln} = 1;
结束
结束

有提示吗?

雅各纳达尔

D G

一派陈

谢谢!

亚历山德拉列表

别介意——路径冲突!它漂亮:)

亚历山德拉列表

你好,我以前用这个伟大的功能。我现在使用Matlab 2016 b,抛出一个错误,我没有得到过,即使我用你的例子。见下文:

> > x = linspace(0, 2 *π,50);
日元= sin (x);
y2 = cos (x);
e1 =兰德(大小(y1)) * 5 + 5;
e2 = [。25 5];

斧子(1)=次要情节(2 2 1);
(l p) = boundedline (x, y₁, e1 - b *, x, y2, e2 - ro);
outlinebounds (l p);
标题(“不透明边界,大纲”);

错误使用独特> uniqueR2012a(第271行)
输入必须是一个矩阵在“行”的情况下。

独特的误差(第147行)
[varargout {1: nlhs}] = uniqueR2012a(变长度输入宗量{1},逻辑(flaginds (1:5)));

错误inpaint_nans(第384行)

错误boundedline > calcpatch(第450行)
xp {2} = inpaint_nans (xp {2}’, 4);

错误boundedline(第319行)
(xp {iln}, yp {iln}] = calcpatch (plotdata {iln 1}, plotdata {iln 2}, isvert, plotdata {iln 6}, plotdata {iln 7}, nanflag);

> >

Yongqiang周

非常酷。

哈米德lessani

哈桑

谢谢,
很容易可以被人工智能编辑后

沙地法雷尔

感谢这个很酷的功能!

@andy这是一个众所周知的问题与Matlab版本2014 b +。
(//www.tatmou.com/matlabcentral/answers/290313-why-is-vector-graphics-chopped-into-pieces)

只有Mathworks可以修复它,但他们坚持认为它不存在(? !)。

这是一个处理:
https://github.com/dfarrel1/fix_matlab_vector_graphics

Useok

我喜欢它!
对开发人员!

朱利安Rudiger

这就跟你问声好!感谢这个伟大的代码。我想把浓度轴和时间轴。我只有一个问题用这个代码,同时策划十进制白天下午1点(例如0.57)在x轴上而不是持续时间在秒左右(我有一个数据点每0.5 s)。与十进制白天阴影错误区域显示不正确,形成阴影区域的阴谋。有人expierience类似的东西吗?

亚当•泰勒

伟大的工作,非常有用。它会很高兴通过线说明符/参数outlinebounds软化了使用非常透明补丁时,可以用多个行,近看吵了

凯利卡尼

@Hannah日产

没有什么特别在这个函数应该影响保存或打印(没有听众或图调整功能或类似的东西);它产生简单的线条和补丁。如果这对你真的只发生与boundedline情节(相对于其他情节补丁和行),你可以在GitHub上输入这是一个问题,与操作系统信息以及具体命令来复制问题?

汉娜日产

图表是伟大的,但由于某种原因Matlab挂当我试着保存数据。它不做数据使用其他绘图命令创建。我2014 Matlab运行。

建议的解决方法吗?

帕斯卡

楠楠

Xiaodan太阳

非常感谢!

Kiran。卡拉

安迪

在新版本的Matlab (2015 b和2013年代),当你“取消组合”boundedline情节在PowerPoint阴影填满几个较小的多边形,共同创建完整的阴影区域。在以前的版本中,这是一个单一的形状。有谁知道如何解决这个问题?

happytudouni

不错的计划,尽管似乎CI或stderr需要计算的用户。
关于奥马尔Choudary提出的线宽的问题:
我修改了程序通过添加以下代码到程序:
%线宽;
(发现、宽度、变长度输入宗量)= parseparam(变长度输入宗量,“线宽”);
如果发现~
宽度= 1;
结束;

霍奇金淋巴瘤(iln) =线(xl {iln}, yl {iln},标记,标记{iln},“线型”,lnsty {iln},“颜色”,lncol {iln},“线宽”,宽度,‘父’,);

所以当我使用这个程序类型
boundedline (X, Y, CI,“线宽”,2);

凯利卡尼

@Caspar,

是的,只使用选项“提出”输入指定你想要的任何颜色(s)。

卡斯帕

是否可以指定自定义颜色的线,即。,而不是从linespec预先确定颜色代码?

p . Agbesi Fiave

杰西

詹姆斯•拉

@Alex Perrone,

谢谢你的帮助,那工作好了!我不认为我会考虑编辑行或补丁的属性。编辑后,我注意到有几个额外的代码你不需要单独预定义轴或改变其可见性叫boundedline后,它会防止轴出现当boundedline叫做迭代循环。

这是我的版本的编辑代码发布:

%轴(hax);%不调用(编辑亚历克斯P)
持有(hax”);%编辑亚历克斯·P
集(hax”,可见“,“关闭”);%防止轴将重点由詹姆斯·R(添加)

iln = 1:在线
惠普(iln) =补丁(xp {iln}, yp {iln},…
ptchcol {iln},……
facealpha,α{iln},……
‘edgecolor’,‘没有’,……
“父”,hax);%添加亚历克斯·P
结束

iln = 1:在线
霍奇金淋巴瘤(iln) =线(xl {iln}, yl {iln},…
“标记”,标记{iln},…
“线型”,lnsty {iln},……
“颜色”,lncol {iln},……
“父”,hax);%添加亚历克斯·P
结束
集(hax”,可见“,“在”);%使轴可见后来称为(James R添加)

然后,我给的例子不用处理个人工作轴外的功能:
x = 1:10;
y (1:) = x +兰德(10);
:y (2) = 2 * x +兰德(10);
的边界= 2 * (10);

h =图(“可见”、“关闭”);
我= 1:尺寸(y, 1)
boundedline (x, y(我:),边界);
结束

%现在打开它。
集(h,“可见”,“上”);

我创建多个人物和情节添加到每个经过多次反复,这种格式对我来说是简单的,允许我只处理图处理和属性在我剩下的脚本。

凯利,我不知道如何正确地测试它,但基于此示例脚本的运行时,这些编辑与临界循环快10 - 11%。

凯利卡尼

@Alex(詹姆斯),

是的,我叫瞄准轴的方式(通过轴(),而不是设置父)导致的额外的副作用使轴聚焦(这是真正的不管他通过了可选的轴处理)。我更新了代码作为亚历克斯建议避免这种行为(并避免轴保持状态的变化;这不是必要的)。新版本将很快上传(当我解决一个技术问题与我的git回购),还包括新的南行为。谢谢你的反馈!

亚历克斯Perrone

@James拉

下面我说,虽然这是荒谬的,因为我对自己回答了一个问题,但出于某种原因,这个问题我想后再也没有出现。

不管怎样,我的问题是关于通过轴boundedline处理。下面我的回答(从2016年1月23日)是我必须设置“父”hax boundedline功能的补丁和行命令,在当前版本在第340行。

此外,轴(hax)线也让图出现,我不认为这是必要的。

具体地说,这里有336 - 345行boundedline的当前版本

轴(hax);
保存所有;

iln = 1:在线
惠普(iln) =补丁(xp {iln}, yp {iln}, ptchcol {iln}, facealpha,α{iln},“edgecolor”,“没有一个”);
结束

iln = 1:在线
霍奇金淋巴瘤(iln) =线(xl {iln}, yl {iln},标记,标记{iln},“线型”,lnsty {iln},“颜色”,lncol {iln});
结束

我这些线改为:

%轴(hax);%不调用
持有(hax”);%只需要持有hax,不是全部

iln = 1:在线
惠普(iln) =补丁(xp {iln}, yp {iln}, ptchcol {iln},…
facealpha,α{iln},‘edgecolor’,‘没有’,……
“父”,hax);%亚历克斯说“父”,hax
结束

iln = 1:在线
霍奇金淋巴瘤(iln) =线(xl {iln}, yl {iln},标记,标记{iln},…
“线型”,lnsty {iln},“颜色”,lncol {iln},…
“父”,hax);
结束

这是你的例子,希望这对你有用。

x = 1:10;
y = x +兰德(10);
的边界= 2 * (10);

h2 =图(“可见”、“关闭”);
ax =轴(“父”,h2,“可见”,“关闭”);
boundedline (x, y,边界,ax);

%现在打开它。
集(ax,“可见”,“上”);
集(h2,“可见”,“上”);

总而言之,我认为你的问题是双重的:
(1)你没有传入轴处理boundedline函数
(2)boundedline函数对待处理的方式需要改变,
至少我认为你的例子,它是我的GUI
因为它没有正确地绘制轴处理我的事情
给它的轴处理是嵌入在复杂GUI(因此我
必须指定“父母”作为自己)。

凯利,我不确定我做的改变应该被纳入boundedline,但这是我必须做些什么来让它工作。

詹姆斯•拉

谢谢你的帖子!这个函数为我解决了很多头痛,但是我遇到一个问题,它覆盖的可见性属性数据我在使用它。我的脚本是创建boundedlines跨多个数据在一个循环,我想保持他们的可见性抑制,以阻止他们与每个情节出现/迭代和降低整体处理时间。

这里有一个例子:

x = 1:10;
y = x +兰德(10);
的边界= 2 * (10);

h1 =图(“可见”、“关闭”);
情节(x, y);

h2 =图(“可见”、“关闭”);
boundedline (x, y,边界);

有一个简单的方法来预防或解决这个?任何帮助将不胜感激!

亚历克斯Perrone

@Kelly卡尼@Ian Craig @Benjamin Pittman-Polletta @Bass @Eelke亨利,

我有一个问题添加到github库为我做最常见的/有用的情况下处理nan和期望输出值应该是什么样子。除非凯利喜欢,请在github评论这个问题更容易跟踪。我希望它反映了别人提及。对我自己来说,目前的情况我需要为这个函数工作。

凯利卡尼

@Thomas,

很难知道到底发生了什么没有一个例子。我喜欢用export_fig(从FEX)而不是打印/ saveas /保存到文件等;通常保存屏幕外观更好。您可能还想玩玩堆积的对象(参见uistack)来解决线隐藏问题(线条堆叠上的补丁在默认情况下,但随后的调整可能重新安排的事情)。

托马斯Leirvik

你好,

第一:感谢伟大的功能!

我想保存我做的图与boundedline . pdf或.epsc使用命令:

saveas (gcf、“文件”、“pdf”)

saveas (gcf、“文件”、“epsc”)

然而,输出并不好:
1)在pdf文件中,左边,利润率又被切断,所以轴不会显示,以及最后的观察轴。

2).eps文件中,一个线绘制不显示。就像所有其他(后面情节从观察1 - 2所示,上面是有界的。从观察2“背后”。

任何评论修复这是赞赏!

——

凯利卡尼

@Anna,

您可以使用双轴设置中,类似于plotyy,获得的效果。这里有一个例子,使用x轴底部的前两行第三个使用x轴顶部:

y = linspace(0, 2 *π,100);
x =[罪(y)因为罪(y) + 0.5 (y) * 100);
e =排列(的(100,1)* (1 2 3)(1 2 3));
iax = [1 1 2];%轴用于每一行

斧子(1)=轴(“盒”,“关闭”,“xaxisloc”,“底”);
斧子(2)=轴(“位置”,得到(ax(1),“位置”),…
“颜色”,“没有”,…
‘ytick’,”,……
“xaxisloc”,“高级”);
linkaxes (ax, ' y ');

2 = 1:尺寸(x, 2)
(霍奇金淋巴瘤(ii)、惠普(ii)] = boundedline (x (:, ii), y, e (:,: ii),…
斧子(iax (ii)),“提出”,ax (1) .ColorOrder (ii):),…
“取向”、“水平的”、“α”);
结束
ax (1)。YLim =[0 2 *π];

安娜

你好,
有一个简洁的方式使用这个伟大的功能,但有两个不同的x轴尺度?我使用它与“水平的”作为因变量在x轴,但我想在同一个图上显示两个不同的数据集。他们有共同的y轴而不是x轴。
提前感谢任何帮助
干杯

光诱导的

@Kelly,

非常感谢,是由于你的工作的例子。

凯利卡尼

@photoinduced,

对于一个线性模型,你会减去预测值计算边界的预测置信区间值。这里有一个简单的例子:

负载carbig
mdl = fitlm(马力,MPG);

xnew = linspace (250, 100);
[ynew ci] =预测(mdl xnew);

b = [ynew-ci (: 1) ci (:, 2) -ynew);

boundedline (xnew, ynew b);

光诱导的

首先感谢共享。

我有一些不能理解的输入这个命令,特别是“b”。
我有一个线性回归,愿显示95%可信区间,测量范围外的外推。我有运行fitlm, coefTest我的数据但不太了解boundedline需要的输入。任何帮助(尤其是如果你可以分享的例子),我们将不胜感激,不能宣称自己是一个专家。

亚历克斯Perrone

@Alex(对自己)boundedline函数设置“父”属性的补丁和手动命令行:补丁(…“父”,hax);

丹·K

哈拉尔德Hentschke

漂亮的工作,非常感谢,也为更新!

马克•海恩斯

@Kelly
极好的!由于一百万点快速反应(和文件)。很多头痛松了一口气。

凯利卡尼

@Mark,

错误意味着你还没有添加代码以Matlab路径;boundedline和Inpaint_nans文件夹都需要在您的路径中,才能使用此功能。搜索“搜索路径”的文档说明。

马克•海恩斯

帮助就太好了。我计算x, y1和y2 Matlab的结果通常是大约110 x1(双),表示置信区间意味着,随着时间的推移)。我得到以下错误:“? ? ?未定义的函数或方法的boundedline双”类型的输入参数。

Xolile Ncipha

我是一名学生工作与matlab建立我的能力。我想画阴影误差棒或boundedline图垂直的二氧化碳。当我使用Confplot或阴影错误条形码,我不要让错误消息。但是我得到的垂直剖面没有阴影边界。我用STDDEV值误差或限制。这可以导致什么?

凯利卡尼

@Ian

请提交这个特性请求通过页面在GitHub上的问题吗?(按照下面的链接下载按钮在右上角)。

我愿意尝试实现这个功能,但是需要更多的例子在不同情况下预期的输出(NaN数据?只在边界数据?在一侧的边界,而不是其他?)你想看到一个空白的补丁,或者只是行吗?等。

伊恩克雷格

我一直在寻找一个这样的函数,它既能使一个有界行和像@Benjamin Pittman-Polletta建议下面,完全跳过NaN值而不是修补。然而,似乎在第268行插入的版本比当前版本不同,并在这条线插入似乎使事情很不高兴,所以我不太确定,把它放在当前版本。

因此,我做一个特性请求允许这种行为有一个开关,这样可以修复和跳过之间做出选择。

否则,非常漂亮。

Lekshmi Dharmarajan

可爱的谢谢!

阿尔贝托小

那么你这个工作吗?我困惑。对不起,刚刚新在Matlab和想将一个通用代码是如何工作的分解。

凯利卡尼

@Dwight,

这个错误通常表明Matlab函数文件找不到…你确保boundedline和Inpaint_nans文件夹添加到您的路径在调用这个函数之前?

德怀特

有人可以检查这个例子中,它说“未定义的函数“boundedline”类型的输入参数双”问题是在第一次使用的功能,“[l p] = boundedline (x, y₁, e1 - b *, x, y2, e2 - ro);“双打它不工作?有一个例子,所以我可以测试功能?
请帮助

Sevasti Modestou

@ Aditya

谢谢你的小心!

Aditya

@ Sevasti Modestou

如果您正在使用MATLAB的2014年,是最有可能的问题用MATLAB对eps的出口。2015年修复它。我和许多其他人都在2014年eps出口的问题。我知道这来自另一个线程,人们试图在乳胶出口到eps嵌入图像。

Sevasti Modestou

这个函数是太棒了!我真的很感激的时间和精力,它让我的生活如此容易得多!

我有一个问题,当我另存为在Illustrator .eps和开放。阴影区域不匹配到周围的线——通常似乎向下位移的少量但也可能稍微转向一边,可能离开。什么好主意吗?谢谢!

Stephen Politzer-Ahles

@Kelly,
固定它,谢谢!

凯利卡尼

@Stephen

我的猜测是,OpenGL是罪魁祸首。pre - 2014 b,看到在文档工作区图属性>渲染器。这是一个Matlab的缺陷,而不是该函数所特有的。这个问题应该解决新的处理图形(R2014b +)。

Stephen Politzer-Ahles

感谢这个伟大的功能!我有一些问题,结合这个函数和colorbar在同一图当我使用“α”选项。例如,下面的代码对我产生很多胡言乱语数字colorbar旁边:

x = linspace(0, 2 *π,50);
日元= sin (x);
y2 = cos (x);
boundedline (x, y1, y2,兰德(长度(日元),2,2)* 5 +。5、“α”);
colorbar

而没有问题,如果我不使用“α”:

x = linspace(0, 2 *π,50);
日元= sin (x);
y2 = cos (x);
boundedline (x, y1, y2,兰德(长度(日元),2,2)* 5 + 5);
colorbar

(注意:我知道在这个例子中没有真正的需要一个colorbar。对于真正的目的,不过,我经常使情节具有这样的(http://fieldtrip.fcdonders.nl/_media/tutorial/eventrelatedaveraging/topoplot_fic_3feb09_erf.png?w=400)在一个次要情节和boundedline另一个次要情节;这是一个问题)

(注:我得到同样的问题在使用shadedErrorBar.m)

斯蒂芬。

谢谢你的提交!让我一天容易得多!

本杰明Pittman-Polletta

让boundedline治疗nan相同的方式——即“阴谋”。,leaving a blank space above where the nans appear - I inserted the following code at line 268:

%分裂线w / nan。

plotdata_supp =细胞(0,7);
is_nan = 0(大小(plotdata, 1), 1);

k = 1:尺寸(plotdata, 1)

naninds = isnan (plotdata {k 1}) | isnan (plotdata {k, 2});

如果任何(naninds)

is_nan (k) = 1;

notnaninds = (0 ~ naninds 0);
notnanstarts =找到(diff (notnaninds) = = 1);
notnanends =找到(diff (notnaninds) = = 1) - 1;

nopolys =长度(notnanstarts);

l = 1: nopolys

poly_indices = notnanstarts (l): notnanends (l);

xdata = plotdata {k, 1} (poly_indices);
ydata = plotdata {k, 2} (poly_indices);
lodata = plotdata {k, 6} (poly_indices);
hidata = plotdata {k 7} (poly_indices);

plotdata_supp = [plotdata_supp;{xdata ydata……plotdata {k, 3:5} lodata hidata}];

结束

结束

结束

plotdata = [plotdata (~ is_nan,:);plotdata_supp];

皮埃尔Megevand

艾琳入股事宜

凯瑟琳

凯利卡尼

@Omar,

提出的输入选项应该允许您指定的颜色你想使用线,这样你就可以保持线之间的相关性和补丁。例如:

(hl、惠普)= boundedline(1:10,兰德(10,1),0.1,“提出”,[0.3 0.2 0.5]);
集(hl,“线宽”,3);

线型等事实后仍然需要修改;颜色是专门治疗由于线之间的联系和补丁,你指出。

奥马尔Choudary

非常好的脚本。

然而,对于我的特定应用程序(可能为他人),这将是非常有用的,允许单独给线属性的可能性,至于情节。也就是说,我想给类似:

boundedline (…,'Color', [0.3 0.2 0.5]);
或boundedline (…“线宽”,3)

而不是字符串格式的选项(例如“r -”)。

的优势,我可以有我自己的表的颜色,线规格等具体每一行我想情节,我想用和你的函数来指定属性。否则很难改变颜色之后没有让它完全不相关的(无用)与您创建的补丁的颜色。

低音

可爱的功能!让漂亮的情节。遗憾的是我还没有找到一种简单的方法来拯救情节以矢量形式与这些补丁。我的两个美分nan。虽然我同意显然是有歧义,如何处理nan。完全缺乏支持不符合现有的绘图功能的基本行为金宝app”。”哪一个想无缝代替这样的一个函数。
“线”介绍了不连续在nan这个实现与补丁可能更困难。但它的好处都是与南的意思一致,方便格式化块(例如,当用户的欲望很容易分开的一个连续的行)。

凯利卡尼

@Eelke,

我故意不包括一个工作区南/正值的范围,因为它似乎每个人我问喜欢一个不同的方法处理这些(下降的点,在这些位置插入,用0代替NaN或适当的大值为正,等等)。所以,我把它适当的用户数据进行预处理。

Eelke亨利

感谢这个伟大的和简单的提交。我注意到一个问题,它不能处理nan的数据。Matlab的情节()和()简单地忽略NaN值,但是补丁()不画任何东西当有NaN数据。

为了解决这个问题,我添加了以下313行左右,在实际调用线()和补丁():

%去除nan
k = 1:元素个数(xp)
naninds = isnan (xp {k}) | isnan (yp {k});
xp xp {k} = {k} (~ naninds);
yp {k} = yp {k} (~ naninds);
结束

大卫·麦克尔罗伊

很棒的小提交。

我有问题“α”选项。我的工作电脑上这个文件没问题,但是崩溃matlab在我的笔记本电脑和我卡海外和绝望!查看其他用户的问题与“α”也许是与opengl吗?

谢谢
戴夫

本科廷

@Kelly——谢谢!我不知道,并将调查此事。

凯利卡尼

@Ben,

不幸的是,OpenGL渲染器是唯一一个支持透明度,但它不支持对数坐标轴(见金宝app//www.tatmou.com/help/matlab/ref/figure_props.html渲染器下,“OpenGL与其他MATLAB渲染器”)。如果你需要透明,你最好的选择可能是之前log-transform数据绘图。

本科廷

谢谢你写这!我有一个问题与有界行不透明,当设置轴对数尺度:

集(gca,‘XScale’,‘日志’);

我也尝试过不同的opengl设置没有运气。

克里斯•琼斯

谢谢你,这是非常有用的!我很欣赏透明特性。

阿里Hummos

@凯利,
由于一百万年。我只有关闭硬件加速opengl问题消失了。
基本上,我只有发出该命令:
> > > opengl软件
这是固定的!
谢谢

凯利卡尼

@Ali,

我猜你的OpenGL渲染器是罪魁祸首。我经历了多次电脑Matlab-using时间,包括pc和mac电脑,总是有问题的某种(注意,在我的示例截图,坐标轴盒子也失踪…这是弊)。你可以尝试一些解决方法://www.tatmou.com/help/matlab/ref/figure_props.html渲染器

阿里Hummos

伟大的工作!它看起来很漂亮。
然而发生了一件事,我想当我更新到2013年Matlab,现在当我使用“α”arugment y轴行消失!
谁有这个问题吗? ?
不知道如何解决。

沃里克

丹尼尔·洛佩斯

就像一个魅力!伟大的代码。

凯利卡尼

@Gideon和马丁,

在这个函数没有什么阻止你设置轴对数尺度通过“xscale”和“yscale”属性,假设你所有的输入导致积极的边界值(nan和正、负的值显示在对数尺度范围将导致补丁消失)。如果你正在寻找一些更复杂的,请给我一个例子,我马上去。

马丁·彼得森古称

伟大的功能——非常有用

像吉迪恩·辛普森我会画我的一些数据对数尺度——这是可以使用这个功能吗?

当我试着不离准则相同颜色的线所以很难distinquish均值和方差是什么:是什么)

吉迪恩·辛普森

工作得很好,但有可能把一个轴在对数尺度吗?

穆罕默德Alwesabi

dbgtjp

优秀的工作。
如果任何人想要避免补丁出现在传说只是314行之后添加以下代码。

集(get (get(惠普(iln),“注释”),“LegendInformation”),“IconDisplayStyle”,“关闭”);

这就可以了。

dbgtjp

vkehayas

费利佩•g . Nievinski

好工作在指出FEX优于其他几种类似的条目。

伊尔

太棒了。它完美地在屏幕上。
我唯一的问题是透明颜色不能与矢量图形导出pdf。如果使用opengl渲染器,将它转换为光栅,这是不可取的。

亚历山大

亚历山大

我经历过以下问题mashine nVidia图形:
当使用“α”选项轴功能。这个问题造成的OpenGL渲染。
解决方法:激活软件渲染
opengl软件;

迪伦

这是一个非常有用的功能,几乎完全是我想要做什么,它应该节省我很多时间。谢谢你使它!

不过,我认为,这将是更有用的,如果你修改了两点:

1)参考有界区域应设置独立的颜色(如RGB数组),而不是限制的轻影对应的线的颜色。这将是特别相关的用户准备黑白数字出版物,例如,可能想要使用两个黑色线条和两种不同色调的灰色的有界区域。我提供的具体的例子当然可以促进仅仅通过允许为每个单独的透明度参数有界区域,但这仍不能提供尽可能多的灵活性,一些用户可能想要的。

2)“传奇”的默认行为是使用相同的颜色的阴影盒有界区域。有的用户可能喜欢的传奇使用相同的颜色和样式,相应的数据。这将是很高兴可以选择使用。我相信这可以从boundedline内部控制。米通过设置“LegendEntry”的“IconDisplayStyle”属性数组的每个补丁“上”或“关闭”。

示例代码:
集(get (get (hPatches(1),“注释”),“LegendInformation”),“IconDisplayStyle”,“关闭”)

同时,似乎有一个错误(使用R2007b):添加一个传奇人物,是使用“α”选项结果没有传奇和有界区域。

扎卡里·丹齐格

好文件。我喜欢的灵活性。

MATLAB版本兼容性
创建R2007b
兼容任何释放
平台的兼容性
窗户 macOS Linux

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

Inpaint_nans

Inpaint_nans /演示

Inpaint_nans /医生

Inpaint_nans /测试

boundedline

catuneven

singlepatch