MATLAB用不同颜色绘制多条曲线 您所在的位置:网站首页 matlab怎么在一张图上画多条曲线 MATLAB用不同颜色绘制多条曲线

MATLAB用不同颜色绘制多条曲线

2023-10-18 23:51| 来源: 网络整理| 查看: 265

在我们的学习工作中,为了直观、数据的比较及趋势的分析等,我们往往需要在一张图片中用不同的颜色绘制多条曲线。这篇文章介绍一下MATLAB在一张图片中用不同颜色绘制多条曲线的几个常用方法。

1、利用MATLAB的默认设置

这也是最简单的用法。比如,我们分别画一条正弦和余弦曲线。

t=linspace(0,5,500);

f=2;

x = sin(2*pi*f*t);

y = cos(2*pi*f*t);

plot(t,x,t,y);

ylim([-1.5,1.5]);

MATLAB默认设置

2、在plot函数中分别具体设定

如果不喜欢MATLAB的默认设置的颜色,我们可以具体指定。比如将上面1中的代码中的plot(t,x,t,y)改为plot(t,x,'b',t,y,'m').那么画出来的图像中x的颜色为蓝色,y为粉红色。也可以改为:

plot(t,x,'b');

hold on

plot(t,y,'m');

是一样的效果,可以根据实际中的使用情况定。

具体设定

3、使用颜色矩阵

当需要画的曲线比较多时或者在循环中画图时,再用2中的一个一个具体指定就麻烦了。这个时候我们接可以把所希望用到的颜色定义为一个矩阵。MATLAB中颜色通过定义一个由介于 0.0 和 1.0 之间的值组成的三列矩阵来创建。第一列指定红色强度。第二列指定绿色强度。第三列指定蓝色强度。比如常用的几种颜色的如下表所示:

颜色 R G B

黑 0 0 0

蓝 0 0 1

绿 0 1 0

青蓝 0 1 1

红 1 0 0

深红 1 0 1

黄 1 1 0

白 1 1 1

我们在一张图片中画5条曲线。

t=linspace(0,5,500);

f=1;

C = [0 0 0; 0 0 1; 0 1 0; 0 1 1; 1 0 0 ];

for A=1:5

x = A * sin(2*pi*f*t);

plot(t,x,'color',C(A,:));

hold on

end

颜色矩阵

从图中可以看出,分别使用了我们程序中设置的黑、蓝、绿、青绿及红色。

4、使用colormap

colormap设定并查看当前图窗的颜色图。比如将3中的C改为C = colormap(hsv(5)) ;画出来的图形是什么样子呢?

hsv

将C = colormap(hsv(5)) ;改为C = colormap(winter(5));又会有什么样的效果呢?

winter

hsv,winter等是MATLAB内置的颜色图。颜色图是由介于 0和 1之间的值组成的矩阵。颜色图可以无限长,但必须只有三列,表示红、黄、蓝分量的强度。

再比如输入代码:

surf(peaks)

colormap summer

summer

这张图颜色图为summer。将颜色图更改为hsv会是什么效果呢?哇,东北大棉袄。

hsv

colormap详情请参考MATLAB官方文档。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有