主要内容

parallelplot

创建平行坐标图

描述

例子

parallelplot (资源描述从表中创建一个平行坐标图资源描述。图中的每一行表示表中的一行,图中的每个坐标变量对应表中的一列。默认情况下,软件绘制所有表列。

例子

parallelplot (资源描述“CoordinateVariables”,coordvars控件创建平行坐标绘图coordvars表中的变量资源描述

例子

parallelplot (___“GroupVariable”,grpvar所指定的表变量grpvar把情节中的台词组合起来。在前面语法中的任何输入参数组合之后指定此选项。

例子

parallelplot (数据根据数值矩阵创建并行坐标图数据

例子

parallelplot (数据“CoordinateData”,coorddata控件创建平行坐标绘图coorddata矩阵中的列数据

例子

parallelplot (___“GroupData”,grpdata使用中的数据grpdata把情节中的台词组合起来。在数值矩阵数据的任何先前输入参数组合之后指定此选项。

例子

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

parallelplot (___属性指定的图形、面板或选项卡中创建并行坐标绘图

例子

p= parallelplot (___返回ParallelCoordinatesPlot对象。使用p在创建对象后修改该对象。有关属性列表,请参见ParallelCoordinatesPlot属性

例子

全部折叠

根据医疗患者数据表创建并行坐标图。

加载病人数据集,并从一个变量子集中创建一个表加载到工作空间中。使用表格创建一个平行坐标图。图中的线条与个别患者相对应。用图表来观察数据的趋势。例如,图表显示吸烟者倾向于有较高的血压值(包括舒张和收缩压)。

负载病人tbl = table(舒张,吸烟者,收缩压);P =并行图(tbl)

图包含parallelplot类型的对象。

p = ParallelCoordinatesPlot with properties: SourceTable: [100x3 table] coordinatvariables:{'舒张''吸烟者''收缩期'}GroupVariable: "显示所有属性

默认情况下,软件随机抖动绘图线,使它们不太可能沿着坐标标尺完美重叠。这种抖动对可视化分类数据特别有帮助,因为它使您能够更容易地区分绘图线。例如,观察沿着吸烟者协调的统治者;情节线与两者都不一致真正的刻度线。

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

p.抖动= 0;

图包含parallelplot类型的对象。

根据海啸数据表创建一个平行坐标图。指定要显示的表变量及其顺序,并根据其中一个变量对图中的行进行分组。

将海啸数据作为表读入工作区。

海啸=可读(“tsunamis.xlsx”);

使用表中变量的子集创建一个并行坐标图。首先,增加图形窗口的大小,以防止情节过于拥挤。然后,要指定变量及其顺序,使用“CoordinateVariables”名称-值对参数。要根据事件的有效性对其进行分组,请设置“GroupVariable”到的名称-值对参数“有效性”。图中的线条对应单独的海啸事件。该图表明数据集中的大多数事件都具有有效性价值被认为是明确的海啸。

图(“单位”“归一化”“位置”,[0.3 0.3 0.45 0.4]) codvars = {“年”“有效性”“原因”“国家”};P =并行plot(海啸,“CoordinateVariables”coordvars,“GroupVariable”“有效性”);

图包含parallelplot类型的对象。

从包含医疗患者数据的矩阵创建并行坐标图。对矩阵中某列中的值进行分类,并使用分类后的值对图中的行进行分组。

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

负载病人X =[年龄身高体重];p =平行plot(X)
p = ParallelCoordinatesPlot with properties: Data: [100x3 double] CoordinateData: [1 2 3] GroupData:[]显示所有属性
p.CoordinateTickLabels = {的年龄(年)的身高(英寸)的体重(磅)};

图包含parallelplot类型的对象。

创建一个新的分类变量,将每个患者分为三个类别之一:平均,或。设置箱子边,使它们包括最小值和最大值高度值。

分钟(高度)
Ans = 60
马克斯(高度)
Ans = 72
binEdges = [60 64 68 72];bin = {“短”“平均”“高”};groupHeight =离散化(高度,binEdges,“分类”箱);

现在使用groupHeight值在平行坐标图中对行进行分组。图表显示病人的体重往往小于病人。

p.GroupData = groupHeight;

图包含parallelplot类型的对象。

从包含医疗患者数据的矩阵中创建并行坐标图。对于每个图,指定要显示的矩阵列,并根据单独的变量对图中的行进行分组。

加载病人数据集,并创建一个矩阵,从一些变量加载到工作空间。

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

使用矩阵中列的子集创建一个并行坐标图X。属性可以指定列及其顺序“CoordinateData”名称-值对参数。根据患者的吸烟状况进行分组吸烟者的值“GroupData”名称-值对参数。图中的线条与个别患者相对应。图表显示,吸烟状况与年龄或体重之间没有明确的关系。

Coorddata = [1 3];p =并行plot(X,“CoordinateData”coorddata,“GroupData”吸烟者)
p = ParallelCoordinatesPlot with properties: Data: [100x3 double] CoordinateData: [1 3] GroupData: [100x1 logical]显示所有属性
p.CoordinateTickLabels = {“年龄”“重量”};

图包含parallelplot类型的对象。

中列的不同子集创建另一个平行坐标图X。把病人按性别分组。图表显示,男性比女性更高、更重。

Coorddata2 = [2 3];p2 =并行plot(X,“CoordinateData”coorddata2,“GroupData”、性别)
p2 = ParallelCoordinatesPlot with properties: Data: [100x3 double] CoordinateData: [2 3] GroupData: {100x1 cell}显示所有属性
p2。CoordinateTickLabels = {“高度”“重量”};

图包含parallelplot类型的对象。

根据停电数据表创建一个并行坐标图。更改数值坐标变量的归一化方法。

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

中断=可读(“outages.csv”);头(停机)
ans =8×6表地区OutageTime RestorationTime造成损失客户  _____________ ________________ ______ __________ ________________ ___________________ {' 西南的}2002-02-01 12:18 458.98 - 1.8202 e + 06 2002-02-01 16:50{“暴风雪”}{“东南”}2003-01-23 00:49 530.14 - 2.1204 e + 05 NaT{“暴风雪”}{“东南”}2003-02-07)21:15 289.4 - 1.4294 e + 05 2003-02-07 08:14{“暴风雪”}{‘西方’}2004-04-06 05:44 434.81 - 3.4037 e + 05 2004-04-06 06:10{“设备故障”}{“中西部”}2002-03-16 06:18 186.442.1275e+05 2002-03-18 23:23{'严重风暴'}{'西部'}2003-06-18 02:49 00 2003-06-18 10:54{'攻击'}{'西部'}2004-06-20 14:39 231.29 NaN 2004-06-20 19:16{'设备故障'}{'西部'}2002-06-06 19:28 311.86 NaN 2002-06-07 00:51{'设备故障'}

创建一个名为OutageDuration这表明每次停电持续了多长时间。转换OutageDuration到每次停电持续的天数。将新变量添加到中断表,并调用它OutageDays

OutageDuration =停机。RestorationTime- outages.OutageTime; outages.OutageDays = days(OutageDuration);

控件创建一个平行坐标图损失客户,OutageDays变量。因为坐标变量是数值型的,所以可以使用“DataNormalization”而且“抖动”名称-值对参数。

Coordvars = {“损失”“客户”“OutageDays”};P =并行plot(中断,“CoordinateVariables”coordvars,“DataNormalization”“zscore”“抖动”, 0);

图包含parallelplot类型的对象。

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{“能源应急”}

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

将有关断电的数据作为表读入工作区。

中断=可读(“outages.csv”);

使用表中列的子集创建并行坐标图。根据导致停电的事件将图中的线路分组。

Coordvars = [1 3 4 6];P =并行plot(中断,“CoordinateVariables”coordvars,“GroupVariable”“原因”);

图包含parallelplot类型的对象。

更改事件的顺序导致通过更新源表。首先,把导致到一个分类变量,指定事件的新顺序,并使用reordercats函数创建一个名为orderCause。然后,更换原来的导致变量,使用neworderCause图的源表中的变量。

categoricalCause = categorical(p.SourceTable.Cause);newOrder = {“攻击”“地震”“能源危机”“设备故障”...“火”“暴风”“雷雨”“风”“暴风雪”“未知”};orderCause = reordercats(categoricalCause,newOrder);p.SourceTable.Cause = orderCause;

图包含parallelplot类型的对象。

因为导致变量包含7个以上的类别,其中一些组在图中有相同的颜色。为每个组分配不同的颜色颜色的属性p

p.Color = parula(10);

图包含parallelplot类型的对象。

输入参数

全部折叠

源表,指定为表。

方法从工作区变量创建表表格方法将数据作为表导入readtable函数。

SourceTable的属性ParallelCoordinatesPlot对象存储源表。

要显示为坐标的表变量,以下列形式之一指定:

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

  • 字符向量的字符串数组或单元格数组-指示表变量的名称。例如,parallelplot(台、“CoordinateVariables”{“年龄”,“体重”,“高度”})选择命名为“年龄”“重量”,“高度”显示为坐标

  • 逻辑向量-包含真正的元素。

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

用于分组数据的表变量,以下列形式之一指定:

  • 字符向量或字符串标量-表示表变量名之一

  • 数字标量-表变量索引

  • 逻辑向量-包含一个真正的元素作为表变量

与表变量相关联的值必须构成数字向量、逻辑向量、分类数组、字符串数组或字符向量单元格数组。

grpvar将行分割成资源描述分成不同的组。默认情况下,该软件根据其组值为相关绘图线着色。同一组对应的标线颜色相同。然而,parallelplot分配最多7个唯一的组颜色。当组的总数超过指定颜色的数量时,parallelplot循环指定的颜色。

在传说中,parallelplot控件中首次出现的顺序显示组名GroupData的属性ParallelCoordinatesPlot

例子:“抽烟”

例子:3.

输入数据,指定为数字矩阵。

数据的属性ParallelCoordinatesPlot对象存储数据值。

要显示为坐标的矩阵列,以下列形式之一指定:

  • 数字向量-表示输入数据矩阵的列。例如,parallelplot(数据、“CoordinateData”,[1 7])中的第一、第五、第六和第七列数据显示为坐标

  • 逻辑向量-包含真正的元素用于输入数据矩阵的选定列。

CoordinateData的属性ParallelCoordinatesPlot对象存储coorddata价值。

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

grpdata将行分割成数据分成不同的组。默认情况下,该软件根据其组值为相关绘图线着色。同一组对应的标线颜色相同。然而,parallelplot分配最多7个唯一的组颜色。当组的总数超过指定颜色的数量时,parallelplot循环指定的颜色。

在传说中,parallelplot控件中首次出现的顺序显示组名GroupData的属性ParallelCoordinatesPlot

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

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

父容器,指定为数字面板选项卡TiledChartLayout,或GridLayout对象。

名称-值参数

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

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

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

若要创建多行标题,请指定字符向量的字符串数组或单元格数组。数组中的每个元素都对应于一行文本。

如果将标题指定为分类数组,MATLAB®使用数组中的值,而不是类别。

例子:p = parallelplot(__,'Title','My Title Text')

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

例子:p.Title = {'My','Title'}

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

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

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

对于逻辑向量、日期时间数组、持续时间数组、分类数组、字符串数组或字符向量单元格数组的坐标变量,parallelplot无论采用何种归一化方法,沿着坐标标尺均匀分布唯一的可能值。

例子:p = parallelplot(__,'DataNormalization','none')

例子:p.DataNormalization = 'zscore'

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

一定数量的抖动对于可视化分类数据特别有帮助,因为抖动使您能够更容易地区分绘图线。然而,抖动Value影响所有坐标变量,包括数值变量。

例子:p = parallelplot(__,'Jitter',0.5)

例子:p.抖动= 0.2

组色,以下列形式之一指定:

  • 指定颜色名称、短名称或十六进制颜色代码的字符向量。十六进制颜色码以哈希符号(),后面跟着3个或6个十六进制数字,取值范围为0F。这些值不区分大小写。因此,颜色代码“# FF8800”“# ff8800”“# F80”,“# f80”是等价的。

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

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

在这些预定义的颜色、等效的RGB三元组和十六进制颜色代码中进行选择。

颜色名称 短名称 RGB值 十六进制颜色代码 外观
“红色” “r” [10 0 0] “# FF0000”

样品的颜色为红色

“绿色” ‘g’ [0 10 0] “# 00 ff00”

样品的颜色为绿色

“蓝” “b” [0 0 1] “# 0000 ff”

样品的颜色为蓝色

“青色” “c” [0 1 1] “# 00飞行符”

样品的颜色为青色

“红色” “米” [10 0 1] “#就”

样品的颜色为洋红色

“黄色” “y” [11 10 0] “# FFFF00”

样品的颜色为黄色

“黑” “k” [0 0 0] # 000000的

样品颜色为黑色

“白色” ' w ' [1 1 1] “# FFFFFF”

样品颜色为白色

下面是MATLAB在许多类型的图中使用的默认颜色的RGB三组和十六进制颜色代码。

RGB值 十六进制颜色代码 外观
[0 0.4470 0.7410] “# 0072 bd”

RGB三联体[0 0.4470 0.7410]样品,呈深蓝色

[0.8500 0.3250 0.0980] “# D95319”

RGB三联体样品[0.8500 0.3250 0.0980],呈暗橙色

[0.9290 0.6940 0.1250] “# EDB120”

RGB三联体样品[0.9290 0.6940 0.1250],呈暗黄色

[0.4940 0.1840 0.5560] “# 7 e2f8e”

RGB三联体样品[0.4940 0.1840 0.5560],呈深紫色

[0.4660 0.6740 0.1880] “# 77 ac30”

RGB三联体[0.4660 0.6740 0.1880]样本,呈现中绿色

[0.3010 0.7450 0.9330] “# 4 dbeee”

RGB三联体样品[0.3010 0.7450 0.9330],呈浅蓝色

[0.6350 0.0780 0.1840] “# A2142F”

RGB三联体样品[0.6350 0.0780 0.1840],呈暗红色

默认情况下,parallelplot分配最多7个唯一的组颜色。当组的总数超过指定颜色的数量时,parallelplot循环指定的颜色。

例子:p = parallelplot(__,“颜色”,{“蓝色”,“黑色”,“绿色”})

例子:p.Color = [0 0 1;0 0.5 0.5;0.5 0.5 0.5]

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

输出参数

全部折叠

ParallelCoordinatesPlot对象,它是a独立的可视化。使用p在创建对象后修改该对象。有关属性列表,请参见ParallelCoordinatesPlot属性

更多关于

全部折叠

独立的可视化

独立可视化是为特殊目的而设计的图表,它独立于其他图表。不像其他图表,比如情节而且冲浪,一个独立的可视化有一个预先配置的axis对象内置于其中,并且一些自定义不可用。一个独立的可视化也有这些特征:

  • 它不能与其他图形元素(如线、补丁或曲面)组合。因此,持有不支持命令。金宝app

  • gca函数可以将图表对象返回为当前轴。

  • 可以将图表对象传递给许多接受axis对象作为输入参数的MATLAB函数。方法传递图表对象标题函数。

提示

  • 以交互方式探索您的ParallelCoordinatesPlot对象,使用这些选项(有些在实时编辑器中不可用):

    • 缩放-使用滚轮缩放。

    • 平移-点击并拖动平行坐标图平移。

    • 数据提示-将鼠标悬停在平行坐标图上以显示数据提示。软件会突出显示图中相应的线条。有关示例,请参见在图中更改数据规范化

    • 重新排列坐标-水平单击并拖动坐标标记标签,将相应的坐标标尺移动到不同的位置。有关示例,请参见使用平行坐标图探索表数据

  • 如果从表中创建并行坐标图,则可以自定义其数据提示。平行坐标图上的数据提示始终显示所选点的值,即使您已经删除了所有行。

    • 若要从数据提示中添加或删除一行,请右键单击图上的任意位置并指向修改数据提示。然后,选择或取消选择变量。

    • 若要添加或删除多行,请右键单击绘图,指向修改数据提示,并选择更多的。然后单击,添加变量>>或通过单击将其删除<<

在R2019a中引入