MATLAB用不同颜色绘制多条曲线 | 您所在的位置:网站首页 › matlab怎么在一张图上画多条曲线 › MATLAB用不同颜色绘制多条曲线 |
在我们的学习工作中,为了直观、数据的比较及趋势的分析等,我们往往需要在一张图片中用不同的颜色绘制多条曲线。这篇文章介绍一下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));又会有什么样的效果呢? winterhsv,winter等是MATLAB内置的颜色图。颜色图是由介于 0和 1之间的值组成的矩阵。颜色图可以无限长,但必须只有三列,表示红、黄、蓝分量的强度。 再比如输入代码: surf(peaks) colormap summer summer这张图颜色图为summer。将颜色图更改为hsv会是什么效果呢?哇,东北大棉袄。 hsvcolormap详情请参考MATLAB官方文档。 |
CopyRight 2018-2019 实验室设备网 版权所有 |