boxchart

创建框图(框图)

描述

boxchart(YDATA创建了一个箱形图,或框图,该矩阵的每一列YDATA。如果YDATA是矢量,然后boxchart创建单个框图。

每个箱形图显示以下信息:中位数,下和上四分位数,任何异常值(使用四分位距计算的),以及最小和不属于异常值的最大值。欲了解更多信息,请参阅箱形图(箱形图)

boxchart(xgroupdataYDATA组载体中的数据YDATA根据在唯一值xgroupdata并绘制各组数据作为一个单独的盒子图表。xgroupdata确定沿每个箱形图的位置X设在。YDATA必须是一个矢量,并且xgroupdata必须具有的长度相同YDATA

boxchart(___名称,值指定使用额外的图表选项中的一个或多个名称 - 值对的参数。例如,您可以比较使用缺口通过指定样本中位数“缺口”,“上”。在所有其他输入参数之后指定名称-值对参数。有关属性的列表,请参阅BoxChart属性

boxchart(斧头___重复到由指定的坐标轴斧头代替到当前轴(gca)。这个论点斧头可以在前面的语法先于任何输入参数的组合。

b= boxchart(___回报BoxChart对象。用b创建它们后,把盒子图表的属性。有关属性的列表,请参阅BoxChart属性

例子

全部收缩

从年龄层次的载体创建一个单一的箱形图。使用箱形图,了解年龄的分布。

加载耐心数据集。年龄变量包含的100名患者的年龄。创建一个箱形图以可视化的年龄分布。

加载耐心boxchart(年龄)ylabel(“年龄(岁)”

39岁的中位数患者年龄显示为箱内线。的32至44岁的下部和上部四分位数中分别示出为框的底部和顶部边缘。晶须端点对应的最年轻和最古老的病人。年龄最小者25岁,年龄最大的50岁。该数据集包含没有异常值,这将由小圆圈来表示。

您可以使用数据提示来获得数据统计信息的摘要。将鼠标悬停在方框图上可以看到数据提示。

使用方框图表来比较数值沿一个魔术方块的列和行分布。

创建一个幻方,10行和10列。

Y =魔法(10)
Y =10×1092 99 1 8 15 67 74 51 58 40 98 80 7 14 16 73 55 57 64 41 4 81 88 20 22 54 56 63 70 47 85 87 19 21 3 60 62 69 71 28 86 93 25 2 9 61 68 75 52 3417 24 76 83 90 42 49 26 33 65 23 5 82 89 91 48 30 32 39 66 79 6 13 95 97 29 31 38 45 72 10 12 94 96 78 35 37 44 46 53 11 18 100 77 84 36 43 50 27 59

创建幻方的每列一个箱形图。每列都有一个类似的中间值(约50)。然而,前五列ÿ有更大的四分位范围比过去的五列ÿ。四分位距是上四分位数(盒的顶边)和下四分位数(盒子的底部边缘)之间的距离。

boxchart(Y)xlabel('柱')ylabel('值'

创建幻方的各行的箱形图。每一行都有一个类似的四分范围,但中值跨行不同。

boxchart(Y')xlabel('行')ylabel('值'

根据其发生一个月绘制地震的大小。用震级的矢量和指示每个地震一个月分组变量。对于每个组的数据,创建一个框图表并将其放置在沿着指定的位置X设在。

读了一套海啸数据添加到工作区的表。该数据集包括以及关于地震海啸信息的其他原因。显示前八行,显示出表的月份,原因和地震震级列。

海啸= readtable('tsunamis.xlsx');海啸(1:8,[“月”“原因”“EarthquakeMagnitude”])
ans =8×3表一个月原因EarthquakeMagnitude _____ __________________ ___________________ 10 { '地震'} 7.6 8 { '地震'} 6.9 12 { '火山'} NaN 3的{ '地震'} 8.1 3 { '地震'} 4.5 5 { '气象'}的NaN 11 {'地震'} 9 3 { '地震'} 5.8

创建表地震,其中包含用于地震引起的海啸数据。

唯一的(tsunamis.Cause)
ANS =8×1细胞{0×0 char}{‘地震’}{‘地震和滑坡’}{‘气象’}{‘未知原因’}{‘火山’}{‘火山和滑坡’}
IDX =含有(tsunamis.Cause,'地震');地震=海啸(idx:);

集团基于其相应的海啸发生一个月的震级。每个月,显示一个单独的盒子图表。例如,boxchart使用第四,第五,和第八震级,以及其它,以创建第三框图表,其对应于第三个月。

boxchart (earthquakes.Month earthquakes.EarthquakeMagnitude)包含('月')ylabel(“地震震级”

请注意,因为该月值是数字,则X轴统治者也是数字。

有关详细描述月份名称,转换earthquakes.Month列到明确的变量。

monthOrder = [“简”“二月”“三月”“四月”“可能”“君”“七月”...“8月”“九月”“十月”“十一月”“12月”]。namedMonths =分类(earthquakes.Month,1:12,monthOrder);

创建相同的方块图和以前一样,但使用明确的变量namedMonths代替数字月份值。该X轴统治者是现在分类和类别的顺序namedMonths确定框图表的顺序。

boxchart(namedMonths,earthquakes.EarthquakeMagnitude)xlabel('月')ylabel(“地震震级”

根据病人的年龄分组,并为每个年龄组创建一个舒张压值的方框图。

加载耐心数据集。年龄舒张变量包含的年龄和100例患者舒张压水平。

加载耐心

组患者分为五个年龄箱。找到的最小和最大年龄,然后划分它们之间的范围分成五箱。滨中的值年龄通过使用可变离散化函数。使用在bin名垃圾箱。由此产生的集运变量是一个明确的变量。

分钟(年龄)
ans = 25
MAX(年龄)
ANS = 50
binEdges = 25:5:50;仓= {20年代末的“30年代初”“30年代后期”“40年代”“40年代后期+”};集运=离散化(年龄,binEdges,“分类”,频段);

为每个年龄组一个箱形图。每个框图示出的患者该组中的舒张血压值。

boxchart(化零为整的舒张压)包含('年龄阶层')ylabel(“舒张压”

合并两个分组变量为一体,并使用该变量组并且将所得框图表定位。

加载示例文件TemperatureData.csv,它通过2016年七月阅读载有2015年1月日平均气温将文件转换成表格。

TBL = readtable('TemperatureData.csv');

转换tbl.Monthtbl.Year变量明确的变量。指定每个变量中的类别的顺序。

monthOrder = {'一月''二月''游行''四月'“可能”“6月”'七月'...“八月”'九月''十月''十一月''十二月'};yearOrder = [2015 2016];tbl.Month =分类(tbl.Month,monthOrder);tbl.Year =分类(tbl.Year,yearOrder);

合并tbl.Monthtbl.Year将变量分组为一个变量xgroupdata。创建箱图表显示温度每个月年配对过程中的分布。注意TBL不包含一些月-年配对的数据,例如2016年8月。

xgroupdata = tbl.Month * tbl.Year。boxchart(xgroupdata,tbl.TemperatureF)ylabel(“温度(F)”

在此图中,你可以轻松地比较温度分布在多个年一个特别的月份。例如,你可以看到,二月气温变化更在2016年比2015年如果你喜欢的温度的时序视图,您可以设置xgroupdatatbl.Year。* tbl.Month

创建框图表,并通过绘制框上方图表中的数据值坚持,稍等

加载耐心将患者分为吸烟者和非吸烟者。用方框图比较各组患者的舒张压值。在方框图上画出个人的舒张压值。

加载耐心boxchart(分类(吸烟者),舒张压)保持图(分类(吸烟者),舒张压'X')xlabel(“抽烟”)ylabel(“舒张压”)保持

使用凹槽来确定中值之间是否有显著差异。

加载耐心数据集。根据病人的位置将他们分开。对于每一组患者,创建一个关于他们的权重的方框图。指定“缺口”,“上”使得每个盒包括锥形,阴影区域被称为一个槽。盒图表重叠的缺口没有显著不同的中位数。

加载耐心boxchart(分类(位置)、重量、'缺口''上')ylabel(的体重(磅)

在这个例子中,三个槽口重叠,显示出3个权重中位数不显著不同。

显示侧由端对使用盒图表tiledlayoutnexttile功能。

加载耐心数据集。兑换吸烟者明确的与更具描述性的类别名称变量(吸烟者非吸烟者而不是10)。兑换SelfAssessedHealthStatus一个顺序明确的变量,因为类别较差的公平优秀的有一个自然的秩序。

加载耐心吸烟者=分类(吸烟者,逻辑([1 0]),{“抽烟”不抽烟的});healthOrder = {'较差的'“公平”'好''优秀的'};SelfAssessedHealthStatus =分类(SelfAssessedHealthStatus,...healthOrder,“序”,真正的);

创建使用一个2×1平铺图表布局tiledlayout函数。创建第一组轴ax₁通过调用nexttile函数。在轴,显示舒张压值的两个框图表,一个为吸烟者和其他非吸烟者。创建第二组轴的ax2平铺图表布局通过调用内nexttile函数。在轴,显示舒张期血压值四个图表,通过自我评估健康状况分组的患者。通过使用指定框的颜色'BoxFaceColor'名称 - 值对的参数。

tiledlayout(1,2)%左轴ax₁= nexttile;boxchart (ax₁,吸烟者,舒张压)ylabel (ax₁,“舒张压”%右轴ax2 = nexttile;boxchart (ax2 SelfAssessedHealthStatus,舒张压,...'BoxFaceColor',[0 0.5 0.5])xlabel(AX2,自我评估的健康状况“)ylabel(AX2,“舒张压”

从带有许多异常值的断电数据创建一个方框图,并通过更改属性更容易在视觉上区分它们BoxChart对象。查找离群值项的索引。

阅读停电数据到工作区中的表。显示表的前几行。

中断= readtable ('outages.csv');头(停电)
ans =8×6表地区OutageTime客户流失RestorationTime原因_____________ ________________ ______ __________ ________________ ___________________ { '西南'} 2002-02-01 12:18 458.98 1.8202e + 06 2002年2月7日16:50 { '暴风雪'} { '东南'} 2003-01-23 0时49 530.14 2.1204e + 05的NaT { '冬季风暴'} { '东南亚'} 2003-02-07 21:15 289.4 1.4294e + 05 2003-02-17八点14 { '冬季风暴'} { '西'} 2004-04-06 05:44 434.81 3.4037e + 05 2004-04-06 06:10 { '设备故障'} {“中西部地区} 2002年3月16日06:18 186.44 2.1275e +05 2002-03-18 23:23 { '剧烈风暴'} { '西'} 2003-06-18 02:49 0 0 2003-06-18 10:54 { '攻击'} { '西'} 2004-06-20 14:39 231.29 NaN 2004-06-20 19:16 {'equipment fault'} {'West' } 2002-06-06 19:28 311.86 NaN 2002-06-07 00:51 {'equipment fault'}

创建一个BoxChart目的boutages.Customers值,这表明有多少客户受到影响各停电。boxchart丢弃的条目与为NaN值。

b = boxchart (outages.Customers);ylabel (“客户数量”

情节包含了很多的异常值。为了更好地看到他们,抖动异常值,改变离群标记样式。当您设置JitterOutliers财产BoxChart反对'上'时,软件会随机地水平置换离群点标记,这样它们就不太可能完全重叠。异常值的值和垂直位置不变。

b.JitterOutliers ='上';b.MarkerStyle ='';

您现在可以更容易地看到异常的分布。

为了找到离群指数,使用isoutlier函数。指定“四分”计算异常值的方法相匹配的boxchart离群的定义。使用索引创建离群表,其中包含的一个子集停电数据。注意isoutlier标识96点的异常值。

IDX = isoutlier(outages.Customers,“四分”);离群值=中断(IDX,:);大小(离群值,1)
ans = 96

由于所有的异常值,很难看到方框图的四分位数。要查看它们,请更改ÿ- 轴限制。

ylim([0 4E5])

输入参数

全部收缩

样本数据,其指定为数值矢量或矩阵。

  • 如果YDATA是一个矩阵,然后boxchart创建一个框图表的每一列YDATA

  • 如果YDATA是一个向量和你不指定xgroupdata, 然后boxchart创建单个框图。

  • 如果YDATA是一个向量和您指定xgroupdata, 然后boxchart创建用于每个唯一值的箱形图xgroupdata

数据类型:||INT8|INT16|INT32|int64|uint8|UINT16|uint32|UINT64

分组和定位变量,指定为数值或类别向量。xgroupdata和向量的长度相同YDATA;你不能指定xgroupdataYDATA是一个矩阵。

boxchart组数据YDATA根据在唯一值xgroupdata。该函数为每组数据创建一个框图,并将每个框图定位在相应的位置xgroupdata值。默认,boxchart框图表的垂直方向并显示xgroupdata值沿X设在。属性可以更改方框图表的方向方向属性。

数据类型:||INT8|INT16|INT32|int64|uint8|UINT16|uint32|UINT64|明确的

目标轴,指定为对象。如果没有指定坐标轴,然后boxchart使用当前轴(gca)。

名称 - 值对参数

指定可选的用逗号分隔的对名称,值参数。的名字是参数的名称和是对应的值。的名字必须出现引号内。您可以按照任何顺序指定多个名称和值对参数名1,值1,...,NameN,值N

例:boxchart([兰特(10,4); 4 *兰特(1,4)], 'BoxFaceColor',[0 0.5 0], 'MarkerColor',[0 0.5 0])创建箱图与绿框和绿色离群值(如果适用)。

BoxChart这里列出的属性只是一个子集。有关完整列表,请参阅BoxChart属性

框的颜色,指定为一个RGB三元组,十六进制颜色代码,颜色名称,或短名称。

对于自定义颜色,指定一个RGB三元或十六进制颜色代码。

  • 一个RGB三元组是一个三元件列向量,其元素指定的颜色的红色,绿色和蓝色分量的强度。的强度必须在范围[0,1];例如,[0.4 0.6 0.7]

  • 十六进制颜色代码是以哈希符号(),接着的三个或六个十六进制数字,它的范围可以从0F。该值不区分大小写。因此,颜色代码'#FF8800''#ff8800''#F80''#F80'是等价的。

另外,您也可以按名称指定一些常见的颜色。该表列出了指定的颜色选择,相当于RGB三胞胎,和十六进制颜色代码。

颜色名称 简称 RGB三元 十六进制颜色代码 出现
'红' 'R' [1 0 0] '#FF0000'

'绿色' ‘g’ (0 1 0) '#00FF00'

'蓝色' “b” [0 0 1] '#0000FF'

“青色” “c” (0 1 1) “# 00飞行符”

'品红' 'M' [1 0 1] “#就”

“黄色” 'Y' [1 1 0] '#FFFF00'

“黑” 数k [0 0 0] '#000000'

'白色' 'W' [1 1 1] '#FFFFFF'

'没有' 不适用 不适用 不适用 没有颜色

以下是默认颜色的RGB三元和十六进制颜色代码MATLAB®用于多种类型的地块。

RGB三元 十六进制颜色代码 出现
[0 0.4470 0.7410] '#0072BD'

[0.8500 0.3250 0.0980] '#D95319'

[0.9290 0.6940 0.1250] '#EDB120'

[0.4940 0.1840 0.5560] '#7E2F8E'

[0.4660 0.6740 0.1880] '#77AC30'

[0.3010 0.7450 0.9330] '#4DBEEE'

[0.6350 0.0780 0.1840] '#A2142F'

例:B = boxchart(RAND(10,1), 'BoxFaceColor', '红')

例:b.BoxFaceColor = [0 0.5 0.5]。

例:b.BoxFaceColor = '#EDB120';

离群值样式,指定为此表中列出的选项之一。

描述
'O'
'+' 加号
'*' 星号
''
'X' 交叉
“广场”要么'S' 广场
“钻石”要么' d ' 钻石
'^' 朝上的三角形
'V' 向下的三角形
'>' 向右的三角
'<' 只左向三角形
五角星形的要么'P' 五角星(五角星)
“卦”要么“h” 六角星(卦)
'没有' 无标记

例:B = boxchart([兰特(10,1); 2], 'MarkerStyle', 'X')

例:b.MarkerStyle = 'X';

离群标记位移,指定为'上'要么“关”,或数字或逻辑1真正) 要么0)。的价值'上'相当于真正“关”相当于。因此,你可以使用这个属性的值是一个逻辑值。该值存储为开/关类型的逻辑值matlab.lang.OnOffSwitchState

如果你设置JitterOutliers属性'上', 然后boxchart随意移动沿着离群标记扩展数据帮助您区分有相似的异常值的方向YDATA值。对于一个示例,请参见可视化和查找离群值

例:B = boxchart([兰特(20,1); 2; 2; 2] '上', 'JitterOutliers',)

例:b.JitterOutliers ='上';

中位数的比较显示,指定为'上'要么“关”,或数字或逻辑1真正) 要么0)。的价值'上'相当于真正“关”相当于。因此,你可以使用这个属性的值是一个逻辑值。该值存储为开/关类型的逻辑值matlab.lang.OnOffSwitchState

如果你设置缺口属性'上', 然后boxchart创建围绕每个位数的锥形,阴影区域。箱图表,其缺口不重叠具有在5%的显着性水平不同的中位数。欲了解更多信息,请参阅箱形图(箱形图)

凹口可以延伸超过下部和上部的四分位数。

例:B = boxchart(RAND(10,2), '陷波', '上')

例:b。切口= '在';

箱图表的方向,指定为'垂直'要么“水平”。默认情况下,盒子图表垂直取向,从而使YDATA统计信息与对齐ÿ设在。不管方向,boxchart存储YDATA在值YData财产BoxChart对象。

例:B = boxchart(兰特(10,1), '方向', '水平')

例:b.Orientation = '水平';

输出参数

全部收缩

箱图表,返回为BoxChart对象。欲了解更多信息,请参阅BoxChart属性

更多关于

全部收缩

箱形图(箱形图)

一个框图,或框图,提供了摘要统计的用于数据样本的视觉表示。定数字数据,对应的框图表显示以下信息:不属于异常值的中位数,下和上四分位数,任何异常值(使用四分位距计算的),以及最小值和最大值。

  • 每个盒子的线的内侧是样品中位数。您可以使用计算位数的值中位数函数。

  • 每个盒子的顶部和底部边缘上和下四分位数,分别。顶部和底部边缘之间的距离是四分位数间距(IQR)。

    有关四分位数是如何计算的更多信息,请参阅位数算法(统计和机器学习工具箱),其中上四分位数对应0.75分位数,下四分位数对应0.25分位数。使用位数函数,您必须拥有统计和机器学习工具箱™许可。

  • 离群值是超过值1.5·IQR离着箱子的顶部或底部。默认,boxchart显示每个离群值'O'的象征。的离群值计算可与isoutlier与功能“四分”方法。

  • 晶须是,每一个盒的上方和下方延伸线。一个晶须上四分位数连接到nonoutlier最大(不是异常值的最大值),而另一个连接下四分位到nonoutlier最低(不是异常值的最低值)。

  • 缺口帮您比较多个框图表样本中位数。当您指定“缺口”,“上”中,boxchart函数创建围绕每个位数的锥形,阴影区域。箱图表,其缺口不重叠具有在5%的显着性水平不同的中位数。显着性水平是基于正态分布的假设,但平均比较为其他分布相当稳健。

    凹口区对应的顶部和底部边缘,以 + 1.57 一世 Q [R / ñ - 1.57 一世 Q [R / ñ 表示,其中是中位数,IQR是四分位范围,和ñ是否不包括数据点的个数为NaN值。

例如箱图表,以标签的汇总统计

提示

  • 您可以添加两种类型的数据提示到BoxChart对象:一个用于每个箱形图,一个用于每个异常值。一般的箱形图数据提示出现在nonoutlier最大值,无论在哪里,您单击框图上。所显示的Num点值包括为NaN对应的值YDATA,但boxchart丢弃为NaN在计算方框图表统计信息之前的值。

  • 您可以使用datatip功能添加更多的数据提示到BoxChart对象,但是数据提示的索引不同于其他图表。boxchart第一受让人指数的框图表,然后分配指标的异常值。例如,如果一个BoxChart目的b显示两个盒子图表和一个异常值,数据提示(B, 'DataIndex',3)创建在离群点的数据提示。

也可以看看

功能

属性

介绍了在R2020a