同很多非数学相关专业的朋友一样,我第一次碰到这个图时也是丈二和尚摸不着头脑。只知道这个工字型的图案,中间的点代表的是平均值,上下的两条横线代表的是方差值,除此之外,连这个图叫什么名字都不知道,只好硬着头皮在百度里输入“matlab作图中间是平均值上下是方差”或者“怎么画图:平均值和方差在图示中表现出来”之类搞笑的关键词搜索来寻找一丝蛛丝马迹。在阅读了很多文章之后,慢慢的才确定,这种统计学上常用的图叫做——误差棒图。

为了给后来者们节省一些时间,在这里我对误差棒图的绘制做个总结,举几个例子分析下可能出现的情况和错误。

首先我们假设一组数据:

A地1-6月份降雨量的平均值分别为12、11、7、7、6和5,各月降雨量的方差分别为0.5、0.4、0.3、1、0.3和0.5;

B地1-6月份降雨量的平均值分别为10、8、5、4、3和3,各月降雨量的方差分别为0.4、0.3、0.4、0.6、0.3和0.5;

Case1:绘制A地的降雨量误差棒图(绘制单幅误差棒图)

Program:

Average=[12,11,7,7,6,5];  %各月的平均值
       Variance=[0.5,0.4,0.3,1,0.3,0.5];   %各月的方差值
       Time=1:1:6;
       errorbar(Time,Average,Variance)    %函数调用格式 errorbar(A,B,X)
       xlabel('月份');ylabel('降雨量/cm');

Graph:

Case2:绘制A地的降雨量误差棒图(绘制单幅误差棒图,方差的正负相不相等时)

Program:

Average=[12,11,7,7,6,5];
       Var_positive=[0.1,0.2,0.5,0.5,0.3,0.1];   %正向的方差
       Var_nagetive=[0.5,0.4,0.3,1,0.3,0.5];    %负向的方差
       Time=1:1:6;
       errorbar(Time,Average,Var_nagetive,Var_positive)   %函数调用格式errorbar(A,B,X,Y)

% X为负向误差,Y为正向误差
       xlabel('月份');ylabel('降雨量/cm');

Graph:

Case3:绘制A地的降雨量误差棒图(绘制单幅误差棒图,并在平均值点处用符号标出)

Program:

Average=[12,11,7,7,6,5];
      Variance=[0.5,0.4,0.3,1,0.3,0.5];
      Time=1:1:6;
      errorbar(Time,Average,Variance,'-o')   %注意'-o'中的‘-’去掉后画出来的图是各个孤立的点
      xlabel('月份');ylabel('降雨量/cm');

Graph:

Case4:讲A、B两地的降雨量误差棒图绘制在一张图上(在同一张图内绘制若干个误差棒图)

Program:

Average1=[12,11,7,7,6,5];
       Variance1=[0.5,0.4,0.3,1,0.3,0.5];     %A地的数据
       Average2=[10,8,5,4,3,3];
       Variance2=[0.4,0.3,0.4,0.6,0.3,0.5];    %B地的数据
       Time=1:1:6;
       errorbar(Time,Average1,Variance1,'r-o')    %A地误差棒图,用红色线表示
       hold on
       errorbar(Time,Average2,Variance2,'b-s')    %B地误差棒图,用蓝色线表示
       xlabel('月份');ylabel('降雨量/cm');

Graph:

paper 39 :Matlab绘制误差棒图(errorbar函数的使用)的更多相关文章

  1. 使用Matlab绘制三维图的几种方法

    以下六个函数都可以实现绘制三维图像: surf(xx,yy,zz); surfc(xx,yy,zz); mesh(xx,yy,zz); meshc(xx,yy,zz); meshz(xx,yy,zz) ...

  2. 用MATLAB绘制折线图,x轴为字符串,并旋转一定的角度!!!

    先上代码,然后再一行一行解释: x=1:37; %这一行其实一开始,写的时候是没有的,后来需要给X轴上规定几个刻度才加上的 plot(x,Y,'linewidth',2); %以x为自变量,y为因变量 ...

  3. Python使用Plotly绘图工具,绘制甘特图

    今天来讲一下如何使用Python 的绘图工具Plotly来绘制甘特图的方法 甘特图大家应该了解熟悉,就是通过条形来显示项目的进度.时间安排等相关情况的. 我们今天来学习一下,如何使用ployly来绘制 ...

  4. 利用matlibplot绘制雷达图

    之前在一些数据分析案例中看到用 Go 语言绘制的雷达图,非常的漂亮,就想着用matlibplot.pyplot也照着画一个,遗憾的是matlibplot.pyplot模块中没有直接绘制雷达图的函数,不 ...

  5. Matlab绘制三维曲面(以二维高斯函数为例)

    原文地址为:Matlab绘制三维曲面(以二维高斯函数为例) 寒假学习了一下Python下的NumPy和pymatlab,感觉不是很容易上手.来学校之后,决定继续看完数字图像处理一书.还是想按照上学期的 ...

  6. matlab绘制心形函数

    matlab 7.0 绘制二维.三维心形函数       又到周六,下周就要迎来春节小长假了,想想都有些激动.在外漂了一整年,总于可以回家和父母团聚了,还有吃好吃的...,哎呀~想想都流口水呢.不过先 ...

  7. Matlab 语谱图(时频图)绘制与分析

    Matlab 语谱图(时频图)绘制与分析 语谱图:先将语音信号作傅里叶变换,然后以横轴为时间,纵轴为频率,用颜色表示幅值即可绘制出语谱图.在一幅图中表示信号的频率.幅度随时间的变化,故也称" ...

  8. MATLAB实例:求相关系数、绘制热图并找到强相关对

    MATLAB实例:求相关系数.绘制热图并找到强相关对 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 用MATLAB编程,求给定数据不同维度之间的相关系 ...

  9. MATLAB实例:绘制折线图

    MATLAB实例:绘制折线图 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 条形图的绘制见:MATLAB实例:绘制条形图 用MATLAB将几组不同的数 ...

随机推荐

  1. 【C】漫谈C语言随机数

    来说说C语言如何产生随机数. 有人会说这不简单?time() + srand() + rand() 3个函数不就OK了吗? 是的,不过,我们还是来看看原理比较好,也就是随机数是如何产生的. 这不无聊. ...

  2. 算法训练 Hanoi问题

      算法训练 Hanoi问题   时间限制:1.0s   内存限制:512.0MB      问题描述 如果将课本上的Hanoi塔问题稍做修改:仍然是给定N只盘子,3根柱子,但是允许每次最多移动相邻的 ...

  3. [LeetCode] Letter Combinations of a Phone Number(bfs)

    Given a digit string, return all possible letter combinations that the number could represent. A map ...

  4. magento安装新插件后后台配置空白解决办法

    前段时间,安装完Magento插件以后,就会出现空白或者404问题,在某些运营中的magento网站,安装新插件后后台配置空白解决. 1 将sysytem->toos->Compilati ...

  5. 【转】github更新自己Fork的代码

    github更新自己Fork的代码 时间 2014-03-02 23:25:55  micmiu - 软件开发 原文  http://www.micmiu.com/software/build/git ...

  6. JavaScript:文本域事件处理

    文本域往往可以输入大量的文字信息,但是在文本域上有一些键盘的处理事件:onkeydown.onkeypress.onkeyup. 范例一:观察文本域的键盘事件处理 代码如下: 效果图如下: 默认状态: ...

  7. Android --SwipeRefreshLayout 下拉刷新

    1.Layout <android.support.v4.widget.SwipeRefreshLayout android:id="@+id/id_swipe_ly" an ...

  8. Scanner类的使用

    Scanner类的使用 (接受键盘输入) java.util.Scanner是Java5的新特征,主要功能是简化文本扫描.这个类最实用的地方表现在获取控制台输入,其他的功能都很鸡肋,尽管Java AP ...

  9. LED_9261在linux2.6.30中tick_led的实现

    在linux2.6.30内核中,内核也提供了相关的平台驱动来操作gpio或LED,但更简便的方法是直接操作GPIO来控制led. 网上一博文中介绍直接封装led_on和led_off()函数直接调用即 ...

  10. dojo使用笔记: 自定义ConfirmDialog

    前言: dojo1.10已经有了原生的ConfirmDialog 做gui应用开发,肯定要用到"确认"对话框, 无论是winForm, swing,还是web,也不管理你用什么技术 ...