的热图
创建热图图
语法
描述
从表创建一个热图h
=热图(资源描述
,xvar
,yvar
)资源描述
并返回HeatmapChart
对象。的xvar
的表变量x设在。的yvar
的表变量y设在。默认的颜色是基于计数聚合的,它合计每一对的次数x而且y值一起出现在表中。使用h
在创建热图后修改热图。有关属性列表,请参见HeatmapChart属性.
使用一个或多个名称-值对参数为热图指定其他选项。在所有其他输入参数之后指定选项。有关属性列表,请参见HeatmapChart属性.h
=热图(___,名称,值
)
在指定的图、面板或选项卡中创建热图h
=热图(父
,___)父
.
例子
从表格数据创建热图
根据医疗病人的数据表创建热图。
加载病人
数据集,并从装入工作区的变量子集创建一个表。然后创建一个热图,计算患有同一组吸烟者
而且SelfAssessedHealthStatus
值。
负载病人tbl =表(LastName,年龄,性别,自我评估健康状态,...吸烟、体重、位置);H = heatmap(tbl,“抽烟”,“SelfAssessedHealthStatus”);
重新排列热图标签
创建一个热图,并重新排列标签沿y设在。
加载病人
数据集,并从数据创建一个热图。分配HeatmapChart
对象添加到变量h
.
负载病人tbl =表(LastName,年龄,性别,自我评估健康状态,...吸烟、体重、位置);H = heatmap(tbl,“抽烟”,“SelfAssessedHealthStatus”);
的标签重新排序y设在。
h.YDisplayData = {“优秀”,‘好’,“公平”,“可怜的”};
方法对标签进行重新排序,方法是将数据更改为类别数据,然后使用reordercats
函数。类可以添加、删除或重命名热图标签addcats
,removecats
,或renamecats
函数,分别。
为热图颜色指定表变量
创建一个热图,并指定在确定热图单元格颜色时要使用的表变量。
加载病人
数据集,并从数据创建一个热图。用患者的平均年龄给每个细胞上色吸烟者
而且SelfAssessedHealthStatus
值,设置ColorVariable
选项“年龄”
.
负载病人tbl =表(LastName,年龄,性别,自我评估健康状态,...吸烟、体重、位置);H = heatmap(tbl,“抽烟”,“SelfAssessedHealthStatus”,“ColorVariable”,“年龄”);
指定颜色数据的计算方法
创建一个热图,并指定在确定热图单元格颜色时要使用的表变量和计算方法。
加载患者数据集并根据数据创建一个热图。用患者的中位年龄给每个细胞上色吸烟者
而且SelfAssessedHealthStatus
值。指定ColorVariable
选择“年龄”
和ColorMethod
选择“中值”
.
负载病人tbl =表(LastName,年龄,性别,自我评估健康状态,...吸烟、体重、位置);H = heatmap(tbl,“抽烟”,“SelfAssessedHealthStatus”,“ColorVariable”,“年龄”,“ColorMethod”,“中值”);
从矩阵数据创建热图
创建一个数据矩阵。然后创建矩阵值的热图。的默认标签x设在和y-轴显示为1、2、3等等。
Cdata = [45 60 32;43 54 76;32 94 68;23 95 58];H = heatmap(cdata);
使用自定义轴标签从矩阵数据创建热图
创建一个数据矩阵。然后创建矩阵值的热图。使用自定义标签x设在和y-axis通过指定前两个输入参数作为您想要的标签。控件的属性来指定标题和轴标签HeatmapChart
对象。
Cdata = [45 60 32;43 54 76;32 94 68;23 95 58];Xvalues = {“小”,“媒介”,“大”};Yvalues = {“绿色”,“红色”,“蓝”,“灰色”};H = heatmap(xvalues,yvalues,cdata);h.Title =“t恤订单”;h.XLabel =“大小”;h.YLabel =“颜色”;
将每一行或每列的颜色规格化
创建一个热图,并将每一列或每一行的颜色规格化ColorScaling
财产。
阅读示例文件outages.csv
变成一个表。示例文件包含代表美国电力公用事业中断的数据。该表包含六列:地区
,OutageTime
,损失
,客户
,RestorationTime
,导致
.显示每列的前五行。
T =可读的(“outages.csv”);: T (1:5)
ans =5×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{'强风暴'}
创建一个热图,显示沿x的不同停机原因y设在。在每个单元格中,显示每个区域由于特定原因发生的停电次数。
h = heatmap(T,“地区”,“原因”);
将每一列的颜色规格化。每列中最小的值映射到色彩图中的第一个颜色,最大的值映射到最后一个颜色。最后一种颜色表示每个区域造成最多停电的原因。
h.ColorScaling =“scaledcolumns”;
将每一行的颜色规格化。每一行中最小的值映射到颜色图中的第一个颜色,最大的值映射到最后一个颜色。最后一种颜色表示由于每种原因而经历最多停电的区域。
h.ColorScaling =“scaledrows”;
使用自定义聚合方法计算颜色数据
创建一个热图,并使用使用自定义聚合方法计算的数据为单元格着色。使用accumarray
函数计算颜色数据。
阅读示例文件Temperature.csv
变成一个表。该文件包含三列:月
,一年
,TemperatureF
.
TBL = readtable(fullfile(matlabroot),“例子”,“图形”,“TemperatureData.csv”));
对象创建类别数组月
而且一年
表的列。然后确定作为标签使用的惟一月份和年份x设在和y设在。
月=类别(tbl.Month);年=绝对的(tbl.Year);Xlabels =类别(月);Ylabels =类别(年);
根据惟一月份和年份的数量确定结果颜色数据的最终大小。
Nummonths = nummel (xlabels);Numyears = numel(ylabels);
转换类别个月
而且年
数组转换为数值索引,以便与accumarray
函数。计算颜色数据作为每个月和年的最高温度组合使用accumarray
函数。使用南
对于遗漏的月份和年份组合。
X =双(月);Y =双倍(年);temps = tbl.TemperatureF;cdata = accumarray([y,x],temps,[numyears,nummonths],@max,NaN);
创建热图。标签的x设在和y-轴分别为月份和年。使用计算出的矩阵数据为热图单元着色。
H = heatmap(xlabels,ylabels,cdata);
注意:您可以使用reordercats
用于对轴标签重新排序的分类数组的函数。
输入参数
资源描述
- - - - - -源表
表格|时间表
源表,指定为表或时间表。
方法可以从工作空间变量创建一个表表格
函数,也可以将数据作为表导入readtable
函数。方法可以从工作空间变量创建时间表时间表
函数。
的SourceTable
的属性HeatmapChart
对象存储源表。
xvar
- - - - - -表变量x设在
特征向量|字符串标量|数字标量|逻辑向量
yvar
- - - - - -表变量y设在
特征向量|字符串标量|数字标量|逻辑向量
cvar
- - - - - -表变量为颜色数据
特征向量|字符串标量|数字标量|逻辑向量
颜色数据的表变量,用以下形式之一指定:
一个变量名的字符向量或字符串标量。例如,
热图(__ ColorVariable, HealthStatus”)
选择名为“HealthStatus”
为y设在。指示表变量索引的数值标量。例如,
热图(__“ColorVariable”1)
对象的表中的第三个变量y设在。包含1的逻辑向量
真正的
元素。
与表变量关联的值必须是数值类型或逻辑
.
属性值为空[]
当使用矩阵数据时。的ColorVariable
的属性HeatmapChart
对象存储所选变量。的ColorData
属性根据所选变量填充数据。
默认情况下,的热图
基于平均聚合计算颜色数据。若要更改计算方法,请设置ColorMethod
财产。
cdata
- - - - - -颜色数据
矩阵
热图单元格的颜色数据,指定为一个矩阵。
的ColorData
的属性HeatmapChart
对象存储值。
例子:[40 24 68;68 37 58;49 23 46]
xvalues
- - - - - -伴随出现的值x设在
分类数组|字符串数组|数字数组|字符向量的单元格数组
沿x-axis,指定为分类数组、字符串数组、数字数组或字符向量的单元格数组。
例子:{‘小’,‘中等’,‘大’}
例子:分类({‘小’,‘中等’,‘大’})
yvalues
- - - - - -伴随出现的值y设在
分类数组|字符串数组|数字数组|字符向量的单元格数组
伴随出现的值y-axis,指定为分类数组、字符串数组、数字数组或字符向量的单元格数组。
例子:{‘小’,‘中等’,‘大’}
例子:分类({‘小’,‘中等’,‘大’})
父
- - - - - -父容器
数字
对象|面板
对象|选项卡
对象|TiledChartLayout
对象
父容器,指定为数字
,面板
,选项卡
,或TiledChartLayout
对象。
名称-值对实参
指定逗号分隔的可选对名称,值
参数。的名字
参数名称和价值
对应的值。的名字
必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家
.
热图(资源描述、xvar yvar,“ColorVariable”,“温度”,“ColorMethod”,“中值”)
请注意
这里列出的属性只是一个子集。有关完整列表,请参见HeatmapChart属性.
“标题”
- - - - - -图表标题
特征向量|字符向量的单元格数组|字符串数组|分类数组
图表标题,指定为字符向量、字符向量的单元格数组、字符串数组或类别数组。
例子:h = heatmap(rand(10,10),'Title','My Title Text')
例子:h.Title = '我的标题文本';
若要创建多行标题,请指定字符向量的单元格数组或字符串数组。数组中的每个元素都对应一行文本。
例子:h.Title = {'My','Title'};
如果指定标题为分类数组,MATLAB®使用数组中的值,而不是类别。
如果使用表格数据创建图表,则默认图表具有自动生成的标题。如果不需要标题,请指定”
.
默认情况下,热图支持指定文本的TeX标记的金宝app子集。使用TeX标记添加上标和下标,修改字体类型和颜色,并在文本中包含特殊字符。如果希望在常规文本中使用TeX标记字符,如下划线(_),则在要包含的字符之前插入反斜杠(\)。反斜杠是TeX转义字符。有关更多信息,请参见翻译属性。
“ColorMethod”
- - - - - -计算颜色数据的方法
“数”
|“的意思是”
|“中值”
|“和”
|“没有”
方法计算颜色数据值(存储在ColorData
),指定为“数”
,“的意思是”
,“中值”
,“和”
,或“没有”
.
如果不希望为颜色数据使用表中的第三个变量,则在此表中指定方法。
方法 | 描述 |
---|---|
“数” |
数一下每一对的次数x而且y值出现在源表中。热图不使用ColorVariable 财产。该值是使用表格数据时的默认值,不指定ColorVariable 参数。 |
如果希望使用表中的第三个变量来表示颜色数据,那么可以设置ColorVariable
属性设置为所需的变量,并指定ColorMethod
属性作为该表中列出的方法之一。对于每一对x而且y中的对应值,方法使用ColorVariable
列来计算数据。
方法 | 描述 |
---|---|
“的意思是” |
计算平均值。的默认值ColorVariable 财产。 |
“中值” |
计算中值。 |
“和” |
对这些值求和。 |
“没有” |
使用正确的值。表中不能包含每一对的多个实例x而且y值。该值为使用矩阵数据时的默认值。 |
如果您想计算自己的聚合数据矩阵,请使用accumarray
函数。对象的输入指定矩阵的热图
函数。
例子:h = heatmap(__,'ColorMethod','median')
例子:h.ColorMethod = 'median'
提示
要以交互方式探索热图中的数据,请使用以下选项。
缩放-使用滚动轮或+而且-缩放键。
平移——单击并拖动热图,或使用方向键在行或列之间平移。
数据提示——将鼠标悬停在热图上以显示数据提示。
重新排列行和列——单击并拖动行或列标签可将其移动到不同的位置。
排序值——单击将鼠标悬停在行或列标签上时出现的图标。单击一次可按升序排列值,单击两次可按降序排列值,单击第三次可重置顺序。
兼容性的考虑
在R2017a中介绍
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。