指定绘图颜色
MATLAB®使用默认颜色集创建图形。默认颜色在您创建的不同图形之间提供了干净和一致的外观。如果需要,您可以自定义颜色。许多绘图函数都有一个输入参数,例如c
或colorspec
用于自定义颜色。这些函数返回的对象通常具有控制颜色的属性。参数和属性的名称可以不同,但它们接受的值通常遵循一个共同的模式。一旦熟悉了模式,就可以使用它来修改各种各样的图。
下面的示例使用酒吧
而且散射
函数演示自定义颜色的总体方法。有关特定绘图函数的有效颜色值的完整列表,请参阅该函数的文档。
颜色值的类型
有这些类型的颜色值:
颜色名称或简称—颜色名称,如
“红色”
或“绿色”
.短名称指定颜色名称中的一个字母,例如“r”
或“g”
.RGB值-通过指定三元素行向量来创建自定义颜色,其元素是颜色的红色、绿色和蓝色组件的强度。强度必须在这个范围内
[0, 1]
.例如,您可以指定粉红色的阴影为[1 0.5 0.8]
.一些控制颜色的函数参数不接受RGB三元组,但控制颜色的对象属性通常接受RGB三元组。
十六进制颜色码(自从R2019a)-通过指定以散列符号开头的字符串或字符向量(
#
)后面跟着三个或六个十六进制数字,取值范围为0
来F
.这些值不区分大小写。因此,颜色代码“# FF8800”
,“# ff8800”
,“# F80”
,“# f80”
它们都指定了相同的橙色阴影。一些控制颜色的函数参数不接受十六进制颜色代码,但您可以使用与对象属性对应的名称-值参数指定十六进制颜色代码。例如,
散射(x, y,深圳“MarkerFaceColor”、“# FF8800”)
将散点图中的标记颜色设置为橙色。
该表列出了所有有效的颜色名称和短名称,并带有相应的RGB三元组和十六进制颜色代码。
颜色名称 | 短名称 | RGB值 | 十六进制颜色代码 | 外观 |
---|---|---|---|---|
“红色” |
“r” |
[10 0 0] |
“# FF0000” |
|
“绿色” |
“g” |
[0 10 0] |
“# 00 ff00” |
|
“蓝色” |
“b” |
[0 0 1] |
“# 0000 ff” |
|
“青色” |
“c” |
[0 1 1] |
“# 00飞行符” |
|
“红色” |
“m” |
[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” |
|
[0.8500 0.3250 0.0980] |
“# D95319” |
|
[0.9290 0.6940 0.1250] |
“# EDB120” |
|
[0.4940 0.1840 0.5560] |
“# 7 e2f8e” |
|
[0.4660 0.6740 0.1880] |
“# 77 ac30” |
|
[0.3010 0.7450 0.9330] |
“# 4 dbeee” |
|
[0.6350 0.0780 0.1840] |
“# A2142F” |
|
指定柱状图的颜色
方法创建红色条形图酒吧
函数,并指定可选的颜色
参数为“红”
.返回bar对象为b
,以便稍后自定义图表的其他方面。
B = bar(1:10,“红色”);
现在,更改条填充颜色和轮廓颜色为浅蓝色通过设置FaceColor
而且EdgeColor
属性转换为十六进制颜色代码,"# 80 b3ff”
.
在R2019a之前,请指定RGB三元组,而不是十六进制颜色代码。例如,b.FaceColor = [0.5 0.7 1]
.
b.FaceColor =“# 80 b3ff”;b.EdgeColor =“# 80 b3ff”;
在散点图中指定标记颜色
创建一个随机数字的散点图。指定标记大小为75
点,并使用名称-值参数指定标记轮廓和填充颜色。的MarkerEdgeColor
属性控制轮廓颜色,而MarkerFaceColor
控制填充颜色。
X =兰特(1100);Y =兰特(1100);散射(x, y, 75,“MarkerEdgeColor”,“b”,...“MarkerFaceColor”,[0 0.7 0.7])
指定一系列图中的颜色
创造一系列情节有两种方法:
函数多次调用绘图函数并使用
持有
函数来保留轴的内容。将包含多个数据序列的矩阵传递给绘图函数。的
情节
函数一直接受矩阵输入,许多其他绘图函数也支持矩阵输入。金宝app
要使用任何一种方法指定颜色,请使用输出参数调用所需的绘图函数,以便可以访问各个绘图对象。然后在要更改的绘图对象上设置属性。
例如,创建一个带有100点填充标记的散点图。调用散射
函数的输出参数s1
.调用持有
函数来保留轴的内容,然后调用散射
使用输出参数再执行两次函数s2
而且s3
.的变量s1
,s2
,s3
是散射
对象。
图x = 1:5;S1 = scatter(x,[6 3 9 10 7],100,“填充”);持有在S2 = scatter(x,[16 13 19 20 17],100,“填充”);S3 = scatter(x,[26 23 29 33 27],100,“填充”);持有从
改变第二个的颜色散射
反对紫色的阴影。
s2。markfacecolor = [0.7 0 1];
的散射
函数也支持矩阵输入金宝app(因为R2021a),所以你可以通过传递一个矩阵并返回一个对象向量来创建相同的图形。
图x = 1:5;Y = [6 3 9 10 7;16 13 19 20 17;26 23 29 33 27];S = scatter(x,y,100,“填充”);
在本例中,要更改第二个数据系列的颜色,请访问第二个数据系列散射
通过将索引到年代
.
(2)。markfacecolor = [0.7 0 1];