parallelplot

创建平行坐标曲线图

描述

例子

p= parallelplot (资源描述)从表中创建一个平行坐标图资源描述并返回一个ParallelCoordinatesPlot宾语。图中的每个行表示在表中的行,并且每个坐标中的情节对应的变量在表中的列。该软件在默认情况下绘制所有表列。

采用p在创建后修改的对象。有关属性列表,请参见ParallelCoordinatesPlot属性

例子

p= parallelplot (资源描述'CoordinateVariables',coordvars)创建从一个平行坐标曲线图coordvars表中的变量资源描述

例子

p= parallelplot (___'GroupVariable',grpvar)使用由指定的表的变量grpvar将情节中的线分组。指定之后的任何在前面的语法输入参数组合的这个选项。

例子

p= parallelplot (数据)从数值矩阵创建一个并行坐标图数据

例子

p= parallelplot (数据“CoordinateData”,coorddata)创建从一个平行坐标曲线图coorddata在矩阵的列数据

例子

p= parallelplot (___“GroupData”,grpdata)使用数据grpdata将情节中的线分组。在数值矩阵数据的前一个输入参数组合之后指定此选项。

例子

p= parallelplot (___,名称,值)指定使用一个或多个名称-值对参数的附加选项。例如,可以为带有数值的坐标指定数据规范化方法。有关属性列表,请参见ParallelCoordinatesPlot属性

p= parallelplot (,___)创建通过指定在该图中,面板上的平行坐标图或标签

例子

全部收缩

建立医疗患者数据的表中的平行坐标图。

加载病人数据集,并从加载到工作区中的变量子集创建一个表。使用该表创建一个并行坐标图。图中的线条对应于个别病人。使用图表观察数据中的趋势。例如,图中显示吸烟者的血压值更高(舒张压和收缩压)。

负载病人TBL =表(舒张,吸烟者,收缩压);P = parallelplot(TBL)

P = ParallelCoordinatesPlot与属性:sourceTable会:[100x3表] CoordinateVariables:{ '舒张' '吸烟者' '收缩'} GroupVariable: '' 显示所有属性

默认情况下,该软件随机抖动的情节线,使他们不可能完全重叠沿坐标统治者。这是抖动可视化分类数据,因为它使你更容易的情节线区分特别有帮助。例如,观察沿着情节线抽烟者协调统治者;情节线不与任何冲洗真正要么刻度线。

若要禁用默认抖动,请设置抖动财产0

p.Jitter = 0;

创建一个从海啸的数据表中的平行坐标图。根据变量中的一个指定表变量来显示和它们的顺序,并且组中的情节的行。

阅读海啸数据到工作区中的表。

海啸= readtable('tsunamis.xlsx');

创建使用该表中的变量子集的平行坐标图。首先,增加了数字窗口大小,以防止过度拥挤的情节。然后,指定变量和它们的顺序,使用'CoordinateVariables'名称-值对的论点。要组出现根据其有效性,设置'GroupVariable'名称 - 值对参数“有效性”。在剧情对应于各个海啸事件的线条。该图表明,大部分出现在数据组中具有的有效性价值被认为是明确的海啸。

数字(“单位”,“归一化”,“位置”,[0.3 0.3 0.45 0.4]) coordvars = {“年”,“有效性”,'原因',“国家”};p = parallelplot(海啸,'CoordinateVariables',coordvars,'GroupVariable',“有效性”);

创建从包含医疗患者数据为矩阵状的平行坐标图。宾在矩阵的一列,和组使用分级值中的情节的线的值。

加载病人数据集,并创建从一个矩阵年龄,高度重量值。使用矩阵数据创建一个平行坐标图。在图中标记坐标变量。图中的线条对应于个别病人。

负载病人X =[年龄、身高、体重];p = parallelplot (X)
Data: [100x3 double] CoordinateData: [1 2 3] GroupData:[]显示所有属性
p.CoordinateTickLabels = {“年龄(岁)”,“身高(英寸)”,“重量(磅)”};

创建一个新的分类变量组每名患者为以下三类:,平均, 要么。设置垃圾桶边,使得它们包括最小值和最大值高度值。

分钟(高度)
ANS = 60
马克斯(高度)
ANS = 72
binEdges = [60 64 68 72];仓= {'短','平均',“高”};groupHeight =离散化(身高,binEdges,“绝对”,频段);

现在使用groupHeight值组中的平行坐标图中的线。该图表明,病人的体重往往低于病人。

p。GroupData = groupHeight;

创建从包含医疗患者数据的矩阵平行坐标图。对于每条曲线,根据一个单独的变量中的情节指定矩阵的列来显示,和组的行。

加载病人数据集,并创建从一些加载到工作区中的变量的矩阵。

负载病人X =[年龄、身高、体重];

使用矩阵中列的子集创建一个并行坐标图X。若要指定列及其顺序,请使用'CoordinateData'名称-值对的论点。根据患者吸烟情况进行分组抽烟者'GroupData'名称-值对的论点。图中的线条对应于个别病人。该图表明,吸烟者状态,要么年龄或体重之间不存在明显的关系。

coorddata = [1 3];p = parallelplot (X,'CoordinateData'coorddata,'GroupData'吸烟者)
Data: [100x3 double] CoordinateData: [1 3] GroupData: [100x1 logical]显示所有属性
p.CoordinateTickLabels = {'年龄','重量'};

创建使用列在不同的子集,另一个平行坐标曲线图X。集团根据自己的性别的患者。该图表明,男性身高和体重超过女性。

coorddata2 = [2 3];P2 = parallelplot(X,'CoordinateData',coorddata2,'GroupData',性别)
P2 = ParallelCoordinatesPlot具有属性:数据:[100x3双] CoordinateData:[2 3] GroupData:{100X1细胞}显示所有属性
p2.CoordinateTickLabels = {“高度”,'重量'};

创建停电数据表中的平行坐标图。更改归一化方法的数字坐标变量。

将断电数据作为表读入工作区。显示表的前几行。

中断= 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'}

创建一个名为新变量OutageDuration表示每停电持续了多久。兑换OutageDuration到每次停电持续的天数。将新变量添加到停电表,并将其命名为OutageDays

OutageDuration = outages.RestorationTime  -  outages.OutageTime;outages.OutageDays =天(OutageDuration);

创建一个平行坐标图失利,客户OutageDays变量。因为坐标变量是数字,显示在图中为z得分的值,没有任何抖动,使用“DataNormalization”“抖动”名称 - 值对的参数。

coordvars = {'失利','顾客',“OutageDays”};p = parallelplot(中断,'CoordinateVariables',coordvars,“DataNormalization”,“zscore”,“抖动”,0);

OutageDays变量包含一个离均值超过30个标准差的值OutageDays值和另一个离均值超过10个标准差的值。将鼠标悬停在绘图中的值上以显示数据提示。每个数据提示表示表中的行对应于图中的行。

查找的行停电表具有已确定的极端OutageDays值。请注意,RestorationTime这两个断电值是可疑的。

异常值=服务中断([1011 269],:)
离群值=2×7表地区OutageTime损失客户RestorationTime引起OutageDays _________________ ___________ ______ __________ ___________ ____________________ __________{“东北”}2009-08-20探测南1.7355 e + 05 2009-08-20二三31 12083{“暴风”}{“中西部”}2008-02-07 06:18 2378.7 0 2008-02-07 4206.4 16:16{“能源应急”}

创建平行坐标图。重新排序的坐标变量中的一个类别。

阅读关于停电的数据到工作区中的表。

中断= readtable('outages.csv');

创建使用该表中的列的子集的平行坐标图。根据造成的停电事件中的情节集团的线。

coordvars = [1 3 4 6];p = parallelplot(中断,'CoordinateVariables',coordvars,'GroupVariable','原因');

更改事件的顺序原因通过更新源表。首先,转换原因到一个明确的变量,指定事件的新顺序,并使用reordercats函数创建一个名为新变量orderCause。然后,取代原来的原因用新变量orderCause的源表中的变量。

categoricalCause =分类(p.SourceTable.Cause);newOrder = {“攻击”,“地震”,“能源危机”,“设备故障”,...“火”,“强风暴”,“雷雨”,“风”,“冬季风暴”,'未知'};orderCause = reordercats (categoricalCause里newOrder);p.SourceTable。原因= orderCause;

由于原因变量包含超过七个类别,一些团体在情节相同的颜色。分配不同的颜色,以各组通过改变颜色的属性p

p.Color = parula(10);

输入参数

全部收缩

源表,指定为表。

方法从工作区变量创建一个表功能,或者您可以使用导入数据表readtable函数。

sourceTable会财产的ParallelCoordinatesPlot对象存储源表。

表变量显示为坐标,在这些形式之一指定:

  • 数值向量——指示表变量的索引。例如,parallelplot(资源描述,“CoordinateVariables”, [1 7])选择第一,第五,第六,和第七在表中的变量,以显示作为坐标。

  • 串阵列或字符向量的单元阵列 - 指示表变量的名称。例如,parallelplot(TBL, 'CoordinateVariables',{ '年龄', '体重', '身高'})选择命名变量'年龄','重量'“高度”以坐标形式显示。

  • 逻辑向量真正元件,用于选定的表的变量。

CoordinateVariables财产的ParallelCoordinatesPlot对象存储coordvars价值。的CoordinateTickLabels属性存储所选择的变量名。

用于分组数据,在这些形式之一指定的表的变量:

  • 矢量字符或字符串标 - 表变量名指示一个

  • 数字标 - 指示表变量指标

  • 逻辑载体 - 包含一个真正为表可变元件

与您的表变量相关联的值必须形成一个数值向量,逻辑向量,分类数组,字符串数组,或字符向量的单元阵列。

grpvar把行分成两行资源描述独特的组织。默认情况下,软件根据它们的组值对相关的绘图线进行着色。同一组对应的标线具有相同的颜色。然而,parallelplot最多不能超过七个独特组的颜色受让人。当基团的总数目超过指定的颜色的数量,parallelplot通过指定的颜色循环。

在传说中,parallelplot方法中按其首次出现的顺序显示组名GroupData的属性ParallelCoordinatesPlot

例:“吸烟者”

例:3.

输入数据,其指定为数值矩阵。

数据财产的ParallelCoordinatesPlot对象存储数据值。

矩阵列显示为坐标,在这些形式之一指定:

  • 数值向量 - 指示输入数据矩阵的列。例如,parallelplot(数据, 'CoordinateData',[1 5:7])选择第1、第5、第6和第7列数据以坐标形式显示。

  • 逻辑向量真正输入数据矩阵中选定列的元素。

CoordinateData财产的ParallelCoordinatesPlot对象存储coorddata价值。

值用于分组矩阵数据,指定为数值向量,逻辑向量,分类数组,字符串数组,或字符向量的单元阵列。

grpdata把行分成两行数据独特的组织。默认情况下,软件根据它们的组值对相关的绘图线进行着色。同一组对应的标线具有相同的颜色。然而,parallelplot最多不能超过七个独特组的颜色受让人。当基团的总数目超过指定的颜色的数量,parallelplot通过指定的颜色循环。

在传说中,parallelplot方法中按其首次出现的顺序显示组名GroupData的属性ParallelCoordinatesPlot

例:[1 2 1 3 2 1 3 3 2 3]

例:分类({“蓝”、“红”、“黄”、“蓝”、“黄”、“红”,“红”、“黄”、“蓝”、“红”})

父容器,指定为数字,面板,标签, 要么TiledChartLayout宾语。

名称 - 值对参数

指定可选的逗号分隔的对名称,值参数。名称参数名和是对应的值。名称必须出现引号内。您可以按照任何顺序指定多个名称和值对参数Name1, Value1,…,的家

例:parallelplot(数据、“GroupData”grpdata‘DataNormalization’,‘zscore’,“抖动”,0)指定将数值数据分组数据通过使用grpdata并显示该数据作为z值,而没有任何抖动。

情节标题,指定为字符向量、字符串数组、字符向量的单元格数组或分类数组。默认情况下,情节没有标题。

为了创建一个多行标题,指定一个字符串数组或字符向量的单元阵列。数组中的每个元素对应于一个文本行。

如果指定的标题作为一个明确的阵列,MATLAB®使用数组中的值,而不是类别。

例:P = parallelplot(__, '标题', '我的标题文本')

例:p.Title =“我的标题文本”

例:p.Title = { '我', '标题'}

用于与数值坐标,指定为以下选项之一归一化方法。

方法 描述
'范围' 显示原始数据一起坐标具有独立最小和最大限制标尺
“没有” 显示原始数据一起坐标具有相同的最小和最大极限尺
“zscore” 显示z得分(具有0均值和为1的标准偏差)沿着每个坐标尺
“规模” 显示值由标准偏差沿每个坐标标尺缩放
'中央' 显示数据中心,以具有0沿每个坐标标尺的平均
“规范” 显示2范数值沿每个坐标尺

有关这些方法的详细信息,请参阅正常化

用于坐标变量,它是一个逻辑向量,日期时间阵列,持续时间阵列,分类数组,字符串数组,或细胞字符向量的阵列,parallelplot沿着坐标标尺均匀地分配唯一的可能值,而不管归一化方法的。

例:p = parallelplot (__“DataNormalization”,“没有一个”)

例:p。DataNormalization = ' zscore '

沿着坐标标尺数据位移距离,指定为在区间[0,1]的数值标量。的抖动值决定了沿着坐标标尺移动的最大距离,其中移动量是一个均匀的随机量。如果你设置抖动财产1,然后相邻抖动区域刚好接触。设置抖动财产0来显示真实的数据值。

抖动一定量的可视化分类数据,因为抖动使你更容易的情节线区分特别有帮助。然而抖动值会影响所有的坐标变量,包括数值变量。

例:p = parallelplot(__“抖动”,0.5)

例:p。抖动= 0.2

组颜色,在其中一种形式中指定:

  • 字符向量指定颜色名称,短名称,或十六进制颜色代码。一个十六进制颜色代码用一个散列符号开始(#),接着是三个或六个十六进制数字,它的范围可以从0F。该值不区分大小写。因此,颜色代码'#FF8800','#ff8800','#F80'“# f80”是等价的。

  • 指定一个或多个颜色名称、短名称或十六进制颜色代码的字符向量的字符串数组或单元数组。

  • 在[0,1]范围内的RGB值的三列矩阵。这三列表示R值、G值和B值。

这些预定义的颜色,它们相当于RGB三胞胎,他们的十六进制颜色代码中进行选择。

颜色名称 简称 RGB值 十六进制颜色代码 出现
“红色” “r” [1 0 0] “# FF0000”

'绿色' 'G' [0 1 0] “# 00 ff00”

'蓝色' 'B' (0 0 1) '#0000FF'

“青色” 'C' [0 1 1] '#00FFFF'

“红色” “米” [1 0 1] '#FF00FF'

'黄色' 'Y' (1 1 0) “# FFFF00”

'黑色' 数k (0 0 0) # 000000的

“白色” ' w ' (1 1 1) '#FFFFFF'

这里有许多类型地块的默认颜色MATLAB用途RGB三胞胎和十六进制颜色代码。

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] “# 77 ac30”

(0.3010 0.7450 0.9330) “# 4 dbeee”

[0.6350 0.0780 0.1840] '#A2142F'

默认情况下,parallelplot最多不能超过七个独特组的颜色受让人。当基团的总数目超过指定的颜色的数量,parallelplot通过指定的颜色循环。

例:P = parallelplot(__, '颜色',{ '蓝色', '黑', '绿色'})

例:p。颜色= [0 0 1;0 0.5 - 0.5;0.5 0.5 0.5)

例:p.Color = { '#EDB120', '#77AC30', '#7E2F8E'}

提示

  • 以交互方式浏览您的数据ParallelCoordinatesPlot对象,使用这些选项(有些不在现场编辑器中提供):

    • ZOOM - 使用滚轮进行放大。

    • 潘 - 点击并拖动平行坐标曲线图进行平移。

    • 数据提示 - 将鼠标悬停在平行坐标绘制以显示数据提示。该软件突出了情节相应的线路。对于一个示例,请参见更改Plot中的数据规范化

    • 重新排列坐标 - 单击并拖动水平坐标刻度标记移动相应的坐标尺子到不同的位置。对于一个示例,请参见浏览表数据使用平行坐标绘制

介绍了R2019a