Matlab相同标记';线条颜色

Matlab相同标记';线条颜色,matlab,graph,colors,matlab-figure,Matlab,Graph,Colors,Matlab Figure,我定义了4种颜色: color_green = [31 135 16] ./ 255; color_red = [244 56 47] ./ 255; color_light_blue = [23 222 230] ./ 255; color_purple = [192 4 247] ./ 255; 因为我有很多数字,所以我用 我想用同样的线颜色做记号。我试过这样做 line_fewer_markers(x,y1,30,'s','LineStyle', 'none', 'LineWidth',

我定义了4种颜色:

color_green = [31 135 16] ./ 255;
color_red = [244 56 47] ./ 255;
color_light_blue = [23 222 230] ./ 255;
color_purple = [192 4 247] ./ 255;
因为我有很多数字,所以我用 我想用同样的线颜色做记号。我试过这样做

line_fewer_markers(x,y1,30,'s','LineStyle', 'none', 'LineWidth', 2,'MarkerFaceColor','color_red');
plot(x,y2,'Color', color_red,'LineWidth',2);
但是不起作用。如果我用
'r'
替换
颜色\u red
,整个正方形将变为红色,而我只需要给边缘着色;我需要准确的红色,因为我会为其他图形做这件事。 如果我使用Matlab提供的标准颜色,它就可以工作。但是我不能使用那种颜色。

您正在将字符串
'color\u red'
而不是变量
color\u red
传递给
行标记

line_fewer_markers(x,y1,30,'s', ...
                'LineStyle', 'none', ...
                'LineWidth', 2, ...
                'MarkerFaceColor', color_red);  %<---- Pass the VARIABLE not a string
您正在将字符串
'color\u red'
而不是变量
color\u red
传递给
行标记

line_fewer_markers(x,y1,30,'s', ...
                'LineStyle', 'none', ...
                'LineWidth', 2, ...
                'MarkerFaceColor', color_red);  %<---- Pass the VARIABLE not a string

使用
函数red\u color=…
表示此上下文中不允许使用函数定义。@Shika93为什么要编写
函数red\u color=
??这不会出现在我的代码中的任何地方。另外是
color\u red
对不起,我不明白我应该在代码的末尾加上
'MarkerEdgeColor',color\u red
。现在起作用了。谢谢使用
函数red\u color=…
表示此上下文中不允许使用函数定义。@Shika93为什么要编写
函数red\u color=
??这不会出现在我的代码中的任何地方。另外是
color\u red
对不起,我不明白我应该在代码的末尾加上
'MarkerEdgeColor',color\u red
。现在起作用了。谢谢