默认的Matlab默认线规格和颜色图是惊人的粗糙。这个函数通过在“感知”空间(而不是RGB空间)等距来创建可识别的颜色。它是基于辛西娅布鲁尔教授(colorbrewer!)的研究,但惊人地容易使用。
这个函数创建了一个N [R B G]颜色的Nx3数组
这些可以用来绘制许多具有可区分和好看的颜色的线。
线型= linspecer (N);让N种颜色供你使用:
colormap (linspecer);设置您的颜色地图,以容易区分的颜色和令人愉快的审美
线型= linspecer (N,“定性”);强制所有的颜色都是可分辨的(最多12种)
线型= linspecer (N,“顺序”);迫使颜色沿着光谱变化
_______________________________________________
展示颜色的例子。
%线颜色
N = 6;
X = linspace(0,π* 3,1000);
Y = bsxfun(@(x,n))sin(x+2*n*pi/ n), x。', 1: N);
C = linspecer (N);
轴(‘NextPlot’,‘replacechildren’,‘ColorOrder’,C);
情节(X, Y,“线宽”,5)
ylim ([-1.1 - 1.1]);
%简单线条颜色的例子
N = 6;X = linspace(0,π* 3,1000);
C = linspecer (N)
推迟;
2 = 1: N
Y = sin (X + 2 * 2 *π/ N);
情节(X, Y,“颜色”,C (ii):),“线宽”,3);
抓住;
结束
% COLORMAP例子
一个=兰德(15);
图;显示亮度图像(一);%默认colormap
图;显示亮度图像(一);colormap (linspecer);% linspecer colormap
_______________________________________________
积分和函数的来源:
这些颜色主要来自:
http://colorbrewer2.org以及Cynthia Brewer, Mark Harrower和宾夕法尼亚州立大学
她从心理测量学的角度研究了这一点,并精心制作了颜色
非常漂亮。
我做了很多选择来决定在Matlab中绘制直线的最好方法。我还对其中一种我认为有点太亮的颜色做了一个小改动。此外,对顺序行样式进行了一些插值。文件中包含一个apache风格的软件许可。
引用作为
乔纳森·c·兰西(2021)。美丽和可分辨的线条颜色+彩图(//www.tatmou.com/matlabcentral/fileexchange/42673-beautiful-and-distinguishable-line-colors-colormap), MATLAB中央文件交换。检索.
MATLAB版本兼容性
平台的兼容性
窗户 macOS Linux标签
确认
启发:天派,最大明显的颜色生成器,CubeHelix色彩地图生成器:美丽和多才多艺!,ColorBrewer:吸引和独特的彩色地图,Matlab 2048,rgb2hex和hex2rgb,感知统一颜色图,高效的2D直方图,不需要工具箱,Hyperplot工具