首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >破坏yAxis &Errorbar

破坏yAxis &Errorbar
EN

Stack Overflow用户
提问于 2014-03-20 09:08:46
回答 1查看 329关注 0票数 0

您可以从.xlsx下载这里文件。

代码

代码语言:javascript
复制
figure('Units', 'pixels', 'Position', [100 100 800 375]);

RSM = xlsread('RSM_V_PSO.xlsx', 'Sheet1', 'C4:F103');
PSO = xlsread('RSM_V_PSO.xlsx', 'Sheet1', 'M4:P103');

ci_RSM = bootci(1000, @mean, RSM);
ci_PSO = bootci(1000, @mean, PSO);

Media_tot_RSM = mean(RSM,1)';
Media_tot_PSO = mean(PSO,1)';

ci_RSM = abs(ci_RSM' - repmat(Media_tot_RSM,1,2)) .* [1.9, 0.8, 0.6, 0.4; 1.9, 0.8, 0.6, 0.4]';
ci_PSO = abs(ci_PSO' - repmat(Media_tot_PSO,1,2));

ydata_m_RSM = (Media_tot_RSM');
ydata_m_PSO = (Media_tot_PSO');
xdata_m = [2 4 6 8];

[xData_RSM, yData_RSM] = prepareCurveData( xdata_m, ydata_m_RSM );
[xData_PSO, yData_PSO] = prepareCurveData( xdata_m, ydata_m_PSO );

hFit_RSM = plot(xData_RSM, yData_RSM,'.');
hold on
hFit_PSO = plot(xData_PSO, yData_PSO,'.');
hE_RSM   = errorbar(xdata_m, ydata_m_RSM, ci_RSM(:,1), ci_RSM(:,2));
hE_PSO   = errorbar(xdata_m, ydata_m_PSO, ci_PSO(:,1), ci_PSO(:,2));


hXLabel = xlabel('Objective function calls');
hYLabel = ylabel('Objective Function');

xlim([1 9]);
ylim([8.07 8.35]);

set(hFit_RSM                          , ...
'Color'           , [0 .2 .6]    );
set(hE_RSM                            , ...
'LineStyle'       , 'none'      , ...
'Marker'          , '.'         , ...
'Color'           , [0 .2 .6], ...
'markersize', 6);
set(hE_PSO                            , ...
'LineStyle'       , 'none'      , ...
'Marker'          , '.'         , ...
'Color'           , [.8 .3 .3], ...
'markersize', 6);

hLegend = legend([hE_RSM hE_PSO],'RSM Data \pm 95% CI', 'PSO Data \pm 95% CI', 'location', 'NorthEast' );
set(gca,'XTick',[2 4 6 8]);

输出:

然后,使用BreakPlot破坏yaxis,请告诉我以下内容:

代码2:

代码语言:javascript
复制
breakplot(xData_RSM,yData_RSM,8.095,8.335,'Line');

产出2:

问题:

  1. 有什么更好的方法来做这个吗?
  2. 错误的hE_RSM消失了。我怎么才能避免呢?
EN

回答 1

Stack Overflow用户

发布于 2014-03-20 09:53:55

替代-这需要一点编程或工作在情节编辑器。

我通常为这样的任务放置两个轴,一个用于顶部部分,另一个用于下部部分。我在它们中绘制了相同的数据,但随后使用axis来缩放两者的正确范围。它需要一些调整,把它们很好地放置,也有一些不必要的传说。

通常,我也做一个小的第三轴,并画两条线,其中斧头已被切割。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22528139

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档