在MATLAB中自动绘制不同颜色的线条

在MATLAB中自动绘制不同颜色的线条

MATLAB会自行处理绘图的颜色,因为它具有这样的功能。这意味着,当用户在一个图中绘制多条线时,MATLAB会根据MATLAB本身的一些计算结果给每条线赋予不同的颜色。但是,如果用户希望改变这些颜色,MATLAB也提供了这个选项。在本文中,我们将通过一个例子来了解MATLAB如何自行绘制不同颜色的线条,以及我们如何自动改变这些颜色。

MATLAB控制的不同颜色线

让我们绘制多条正弦和余弦曲线,看看MATLAB如何处理这些曲线的颜色。

示例 1:

% MATLAB code for plot
% X-coordinates
x = linspace(-1,1.5);
y1 = sin(x);
y2 = cos(x);
  
figure
plot(x,y1,x,y2)
hold on
plot(sin(x))
plot(sin(x*2))
plot(cos(x))
plot(cos(x*2))
hold off

输出:

在MATLAB中自动绘制不同颜色的线条

保持 “参数用于将不同的曲线绘制在同一幅图中,而绘图命令中的线宽参数可以扩大曲线的宽度,以提高曲线的可见度。在上面的代码中,我们正在绘制4条曲线

  • sin(x)
  • sin(x2)
  • cos(x)
  • cos(x2)

可以看出,MATLAB在处理这些曲线的颜色映射时没有任何错误。有多少条曲线,就有多少种可能的RGB颜色组合,这一点是真实的。现在我们来看看如何设置MATLAB通过从用户定义的代码中获取色序来自动绘制不同的颜色线。

自动绘制不同颜色的线条

我们将使用MATLAB轴的颜色映射属性,用均匀分布的随机数绘制不同的颜色。为此,我们需要在[0,1]范围内创建一个n乘3的随机数数组,因为这是RGB值范围。然后,我们将把它作为参数传递给colororder(),以定义我们的n个图的颜色。

语法:

colors = rand([n 3]) 
colororder(colors) 

示例 2:

% MATLAB code for plot different colour line 
% x-data 
x=linspace(-1,1);    
  
% Random color combinations
colors = rand([100 3]);
  
% Adding colors to color order
colororder(colors)
  
% Plotting plots with new colororder
hold on
plot(sin(x),LineWidth=3)
plot(sin(x*2),LineWidth=3)
plot(cos(x),LineWidth=3)
plot(cos(x*2),LineWidth=3)
hold off
  
% Adding legend
legend

输出:

在MATLAB中自动绘制不同颜色的线条

解释:

这里,颜色数组是一个范围为0-1的随机数数组。数组中的三列定义了一行的R、G、B颜色代码值,它被用作一条图线的颜色。

注意: 这种生成颜色的方法总是会给绘图带来不同的颜色,因为RGB颜色值是由随机数定义的,是随机的。这种方法的随机性使得MATLAB可以自动选择图线的颜色。这种方法的好处是,每次运行上述代码时,都会为我们的图线产生新的颜色组合,因为颜色顺序是由随机数定义的。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程