在之前的文章中,分享了Matlab柱状图的绘制模板:

折线图的绘制模板:

散点图的绘制模板:

在实际应用时,很多时候需要在以上内容基础上添加误差棒

所以,这次来分享一下带误差棒的柱状图的绘制模板,算是给柱状图打个补丁。

或者,从另一个角度说,其实也可以叫误差棒(柱状图)的绘制模板,只不过误差棒基本不独立出现。

先来看一下成品效果:

特别提示:Matlab论文插图绘制模板系列,旨在降低大家使用Matlab进行科研绘图的门槛,只需按照模板格式添加相应内容,即可得到满足大部分期刊以及学位论文格式要求的数据插图。如果觉得有用可以分享给你的朋友


模板中最关键的部分内容

1. 数据准备

此部分主要是读取数据,定义自变量和因变量

% 读取数据% 自变量x = 1:5;% 因变量% dataset为5*3的矩阵,一行3个为一组,共5组dataset = [0.241,0.393,0.294;          0.219,0.254,0.238;          0.238,0.262,0.272;          0.198,0.329,0.287;          0.201,0.197,0.185];% 误差矩阵AVG = dataset/5; % 下方长度STD = dataset/7; % 上方长度

2. 颜色定义

颜色搭配比较考验个人审美,需要多加尝试

这里用之前分享的colorplus工具

%% 颜色定义C1 = colorplus(239);C2 = colorplus(374);C3 = colorplus(357);

3. 带误差棒的柱状图绘制

首先使用‘bar’命令,绘制初始柱状图,然后使用‘errorbar’命令,绘制每一根柱子的误差棒

% 绘制初始柱状图GO = bar(x,dataset,1,'EdgeColor','k');% 添加误差棒[M,N] = size(dataset);xpos = zeros(M,N);for i = 1:N    xpos(:,i) = GO(1,i).XEndPoints'; % v2019bendhE = errorbar(xpos, dataset, AVG, STD);

值得一提的是,模板中使用的XendPoints,可以给出柱状图每根柱子顶点的横坐标,但需要2019b以上的版本如果不是,则需要自己定义误差棒中心的位置

4. 细节优化

为了插图的美观,首先将柱状图赋上之前选好的颜色,然后调整误差棒的属性

% 柱状图赋色GO(1).FaceColor = C1;GO(2).FaceColor = C2;GO(3).FaceColor = C3;% 误差棒属性set(hE, 'LineStyle', 'none', 'Color', 'k','LineWidth', 1.2)

进一步,对坐标轴参数、字体字号等进行调整:

% 坐标区调整set(gca, 'Box', 'off', ...                                        % 边框        'XGrid', 'off', 'YGrid', 'on', ...                        % 网格        'TickDir', 'out', 'TickLength', [.01 .01], ...            % 刻度        'XMinorTick', 'off', 'YMinorTick', 'off', ...             % 小刻度        'XColor', [.1 .1 .1],  'YColor',[.1 .1 .1],...            % 坐标轴颜色        'YTick', 0:0.1:1,...                                      % 刻度位置、间隔        'Ylim' , [0 0.5], ...                                     % 坐标轴范围        'Xticklabel',{'samp1' 'samp2' 'samp3' 'samp4' 'samp5'},...% X坐标轴刻度标签        'Yticklabel',{[0:0.1:1]})                                 % Y坐标轴刻度标签% Legend 设置   hLegend = legend([GO(1),GO(2),GO(3)], ...                 'A', 'B', 'C', ...                 'Location', 'northeast');% Legend位置微调P = hLegend.Position;hLegend.Position = P + [0.015 0.03 0 0];% 字体和字号set(gca, 'FontName', 'Helvetica')set([hXLabel, hYLabel], 'FontName','AvantGarde')set(gca, 'FontSize', 10)set([hXLabel, hYLabel], 'FontSize', 11)set(hTitle, 'FontSize', 11, 'FontWeight' ,'bold')% 背景颜色set(gcf,'Color',[1 1 1])

设置完毕后,按照所需分辨率、格式输出图片。

%% 图片输出figW = figureWidth;figH = figureHeight;set(figureHandle,'PaperUnits',figureUnits);set(figureHandle,'PaperPosition',[0 0 figWfigH]);fileout = 'test';print(figureHandle,[fileout,'.png'],'-r300','-dpng');

以上。

完整代码:

带误差棒的柱状图

Matlab论文插图绘制模板第28期—柱状图(带误差棒errorbar)相关推荐

  1. Matlab论文插图绘制模板第28期—折线图进阶

    在之前的文章中,分享了Matlab折线图的绘制模板: 散点图的绘制模板: 也介绍了误差棒的使用方式: 这一次,我们尝试在折线图的基础上,加入更多的元素,比如线型.符号类型.公式,并在此基础上添加误差棒 ...

  2. Matlab论文插图绘制模板第24期—柱状图(多组堆叠)

    在之前的文章中,分享了一个Matlab柱状图的绘制模板: 以及一些特殊形式的柱状图: 昨天有朋友问我,类似下面这种多组堆叠图应该怎么画. 我告诉她,之前有类似的教程,稍微举一反三一下,不难画. 但回头 ...

  3. Matlab论文插图绘制模板第61期—横向多组堆叠图

    之前有分享过一个Matlab多组堆叠图的绘制模板: 最近有朋友私信我,想让我出一个横向的多组堆叠图. 所以,这次就再出一期横向多组堆叠图的教程. 先来看一下成品效果: 特别提示:Matlab论文插图绘 ...

  4. Matlab论文插图绘制模板第69期—带误差棒的折线图(Errorbar)

    在之前的文章中,分享了一系列Matlab折线图的绘制模板: 这一次,再来分享一种特殊的折线图:带误差棒的折线图. 先来看一下成品效果: 特别提示:Matlab论文插图绘制模板系列,旨在降低大家使用Ma ...

  5. Matlab论文插图绘制模板第50期—分簇散点图(Swarmchart)

    在之前的文章中,分享了很多Matlab散点图的绘制模板: 这一次,再来分享一种特殊的散点图:分簇散点图. 先来看一下成品效果: 特别提示:Matlab论文插图绘制模板系列,旨在降低大家使用Matlab ...

  6. Matlab论文插图绘制模板第78期—进阶词云图

    词云图一般由词汇.颜色.大小三种元素构成,其中颜色主要用于区分不同的词汇,而字体的大小可以直观地展示词汇数值的大小. 在之前的文章中,分享过一个简单的Matlab词云图绘制模板. 那么,我们进一步看一 ...

  7. Matlab论文插图绘制模板第33期—等高线填充图(contourf)

    在上一期文章中,分享了Matlab等高线图的绘制模板: 进一步,再来分享一下等高线填充图的绘制模板. 先来看一下成品效果: 特别提示:Matlab论文插图绘制模板系列,旨在降低大家使用Matlab进行 ...

  8. Matlab论文插图绘制模板第39期—阶梯图(Stairs)

    在之前的文章中,分享了Matlab折线图的绘制模板: 三维折线图的绘制模板: 以及一些特殊的线图: 这次再来分享一种线图:阶梯图. 先来看一下成品效果: 特别提示:Matlab论文插图绘制模板系列,旨 ...

  9. Matlab论文插图绘制模板第32期—等高线图(contour)

    开门见山: 等高线(contour)图怎么画? 先来看一下成品效果: 特别提示:Matlab论文插图绘制模板系列,旨在降低大家使用Matlab进行科研绘图的门槛,只需按照模板格式添加相应内容,即可得到 ...

最新文章

  1. go语言中fmt包中Print、Printf、Println输出相关函数的区别
  2. 各种的jsp数据库连接方法代码!(以前收集的)
  3. layer output 激活函数_深入理解YOLO v3实现细节 - 第3篇 构建v3的Loss_layer
  4. 查找Linux中内存和CPU使用率最高的进程
  5. Webstorm 10.0.4 配置
  6. mysql日志种类、二进制日志模式、mysqlbinlog解析二进制日志
  7. java去掉图片边框颜色_sharp 去除图片边框
  8. NBear.Mapping使用教程(5):实体对象与NameValueCollection,Dicitonary以及NBear.Mapping性能
  9. vue中watch的用法总结以及报错处理Error in callback for watcher checkList
  10. hbase 使用disruptor_一条数据的HBase之旅,简明HBase入门教程-Write全流程
  11. Oracle 取某100天的每一天的日期
  12. 解决ueditor中没法动态配置imageurlprefix的方法
  13. 英文文档: 如何使用 OpenSSL 创建与吊销数字证书
  14. kibana4 分析和搜索仪表板 安装和配置
  15. 讨论:寺庙和尚义工不宜说感谢,可以祝福
  16. 微积分中BW定理指的是什么
  17. Civil3D绘制路线
  18. 软件测试缺陷报告分析,测试报告中的缺陷分析和测试结论应该怎么写?
  19. 3串锂电池充电保护板设计
  20. 获取本地视频url的方法

热门文章

  1. matlab中contour 函数的用法(绘制等高线)
  2. Hive数据仓库中历史拉链表实践
  3. 零预算引爆个人和企业品牌
  4. iOS 开发者必不可少的 75 个工具,你都会了吗
  5. bmob 快速搭建后台
  6. IIS Express配置使通过IP访问
  7. Android面试你必须要知道的那些知识,已拿offer附真题解析
  8. AI基础原理篇(一)
  9. Windows10+YOLOV3+VisualStudio2017最新版本超详细过程
  10. 处理BigDecimal字段, java.math.BigDecimal cannot be cast to [Ljava.lang.Object;