默认的Matlab默认线规范和颜色图是非常粗糙的。该函数通过在*感知*空间中(而不是在RGB空间中)间隔颜色来创建可区分的颜色。它是基于辛西娅·布鲁尔教授(颜色布鲁尔!)的研究,但惊人地易于使用。
该函数创建的N [R B G]的颜色的NX3阵列
这些可用于绘制大量的可区分和好看的颜色线。
lineStyles = linspecer(N);使N种颜色供您使用:lineStyles(二,:)
colormap (linspecer);设置你的颜色图有容易区分的颜色和令人愉快的审美
lineStyles = 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 (linspecer);% linspecer colormap
_______________________________________________
信用和在功能来自:
颜色主要取自:
http://colorbrewer2.org还有Cynthia Brewer, Mark Harrower和宾夕法尼亚州立大学
她从心理测量学的角度研究了这一点,并精心设计了颜色
精美。
我做了很多选择来决定在Matlab中绘制直线的最佳方法。我还对其中一种颜色做了一点小小的改动,我觉得它太亮了。此外,一些插值正在进行的顺序线样式。文件中包含一个apache风格的软件许可证。
乔纳森·c·兰西(2020)。美丽和可区分的线条颜色+ colormap(//www.tianjin-qmedu.com/matlabcentral/fileexchange/42673-beautiful-and-distinguishable-line-colors-colormap),MATLAB中央文件交换。检索。
1.4.0.0 | 基本色盲支持多达4种颜色。万博1manbetx使用参数“色盲” |
|
1.4.0.0 | 小的改变连续输出 |
|
1.3.0.0 | 调整基于斯蒂芬Cobeldick的优秀建议的功能。 |
|
1.1.0.0 | 我把大写N的颜色调暗了一点。也使演示更清晰。 |
启发:天派,最大清晰的颜色生成器,CubeHelix色彩图生成器:美丽和多功能!,在ColorBrewer:有吸引力和独特的colormaps,Matlab 2048,rgb2hex和hex2rgb,MatPlotLib感知上一致的颜色映射,高效的2D直方图,不需要工具箱,Hyperplot工具
阿图尔·卡明斯基(查看配置文件)
杰克马丁(查看配置文件)
岩岩堂(查看配置文件)
哲威姚明(查看配置文件)
塔里克Rashwan(查看配置文件)
Rene Sørensen(查看配置文件)
艾哈迈德Alghamdi(查看配置文件)
非常感谢。你的函数改善了我即将发表的论文中人物的颜色。
马塞洛•费尔南德斯(查看配置文件)
秋道(查看配置文件)
玉坤张(查看配置文件)
谢谢你的代码,它真的帮助我改善我的图片在我的论文工作
斯韦特兰娜·巴拉诺娃(查看配置文件)
谢谢你的功能!
雅各布Jongsma(查看配置文件)
太棒了!
丸(查看配置文件)
谢详解(查看配置文件)
本产品B(查看配置文件)
兰德Vanroye(查看配置文件)
Ajey Venkataraman(查看配置文件)
ZhiH(查看配置文件)
谢谢分享这个文件!
Hanghang马(查看配置文件)
陈Yingqi(查看配置文件)
非常好,非常漂亮!
lei赵(查看配置文件)
KAE(查看配置文件)
有用
Mukalu正树(查看配置文件)
你媳(查看配置文件)
他何(查看配置文件)
古斯塔夫·弗洛伦蒂诺(查看配置文件)
Procat(查看配置文件)
钟伊尔公园(查看配置文件)
优秀的
大卫·佛朗哥(查看配置文件)
太棒了!
歇尔Cabatic(查看配置文件)
使用方便,谢谢!
Shailesh Appukuttan(查看配置文件)
T罗基特(查看配置文件)
剑康(查看配置文件)
米歇尔xiloyannis(查看配置文件)
雷李(查看配置文件)
Gizem Okyay(查看配置文件)
DF(查看配置文件)
神奇的功能,在MATLAB R2014a和R2014b的伟大工程。谢谢!
DF(查看配置文件)
基诺Delfe(查看配置文件)
马修Hoehler(查看配置文件)
BreezyWest(查看配置文件)
Fannymost(查看配置文件)
我喜欢它,非常酷
minzhen李(查看配置文件)
静温(查看配置文件)
斯蒂芬Cobeldick(查看配置文件)
谎称牌照是做偷偷摸摸的事。
尽管作者写道“文件中包含APACHE风格的软件许可”,但实际上在本文的下载部分完全没有提到APACHE许可。所提供的许可证实际上是BSD许可证,MATLAB文件交换只支持BSD许可证。万博1manbetx
此提交违反了Cynthia Brewer的ColorBrewer配色方案的许可条件,该配色方案要求将Cynthia的APACHE许可证包括在内:
http://www.personal.psu.edu/cab38/ColorBrewer/ColorBrewer_updates.html
特里斯坦Ursell(查看配置文件)
程joylin(查看配置文件)
程joylin(查看配置文件)
塞浦路斯(查看配置文件)
杰米(查看配置文件)
上海欧(查看配置文件)
斯蒂芬Cobeldick(查看配置文件)
请注意,这个功能破坏了原作者的版权,因为它不包括版权通知本身:
http://www.personal.psu.edu/cab38/ColorBrewer/ColorBrewer_updates.html
燕江(查看配置文件)
非常有用的。如果接近黄色的颜色更暗一些就更好了。
VeraM(查看配置文件)
谢谢分享这个文件,非常有用!
杰夫·刘(查看配置文件)
马蒂亚斯Hunstig(查看配置文件)
这一直是我的了,而线的标准颜色表。不过,我经常彻底地改变了黄线的颜色 - 这是远光是在白色背景上地辨认。
“国丰(查看配置文件)
感谢这个伟大的功能。这使得图形更好更方便。
乔纳森C. Lansey(查看配置文件)
谢谢大家的好评,我非常感谢。
也感谢Stephen的建议。
丹尼(查看配置文件)
让人印象深刻。把它设置为我的默认值
斯蒂芬Cobeldick(查看配置文件)
这可能会感兴趣的作者,如果他们想提高本次提交的代码:
//www.tianjin-qmedu.com/help/matlab/matlab_prog/vectorization.html
斯蒂芬Cobeldick(查看配置文件)
在作者对我的最后评论所作的修改之后,我想我将再次审查这一提交。就我先前提出的相同观点:
1.函数现在返回一个MATLAB标准的N*3数字颜色图。
2.默认大小现在是64,这仍然不匹配MATLAB的colormap函数的默认值。
3.现在有一个H1线(虽然也许是单词“颜色表”应包括在这一行?)。
4. mlint消息已经参加过(在MATLAB R2012b)。
5.例子是现在已经完成!
6.现在叫“nargin”,而不是慢的“exist”。
7.“for”循环仍然用于完成基本的算术运算。这是由于数据存储在单元格数组中。如果数据只是存储在数字数组中,那么可以删除所有这些“for”循环。
8.之前的“for”循环查阅预先分配的单元阵列。
9.不必要使用“varargin”的,当一个简单的第二个参数就足够了。
10.改进的例子。
11.仍然没有“还看”行链接到相关功能:“colormap”,“plot”,“jet”,“hsv”,“rgbplot”,…
12.在ColorBrewer数据分布没有所需的Apache许可:
http://www.personal.psu.edu/cab38/ColorBrewer/ColorBrewer_updates.html
大多数点已经解决,并提交基本上做什么它说。然而代码的质量较差。在使用单元阵列特别为存储数字数据然后需要多个本地函数来执行基本的算术运算的数值。从“矩阵实验室” MATLAB的名字获得:它被设计为在数字矩阵进行数字运算,速度快!在存储单元阵列中的数据,并使用多个“for”循环,以实现基本的数字功能是使用MATLAB差的,并且作为结果,此提交是更大和更复杂的比它需要的是提供这种功能。
这是两颗星星,它们向MATLAB用户介绍了比“jet”和“hsv”更好的色彩映射。
安妮Urai(查看配置文件)
美丽,加入这个作为默认颜色映射到我的startup.m来 - 不要再伤害眼睛。谢谢!
g ^ w ^(查看配置文件)
看完这篇文章后颜色大参考:http://eagereyes.org/basics/rainbow-color-map
g ^ w ^(查看配置文件)
g ^ w ^(查看配置文件)
安德鲁·谭(查看配置文件)
很美丽。谢谢!
杰里米·曼宁(查看配置文件)
多么美丽的colormap--我的新的默认。谢谢!
陆莉(查看配置文件)
谢谢!
乔纳森C. Lansey(查看配置文件)
谢谢你的反馈,Stephen。我在周末更新了这个功能,几乎包括了你所有的建议。我希望它能很快得到Mathworks的批准。
斯蒂芬Cobeldick(查看配置文件)
修正上面的例子:可以通过设置“ColorOrder”轴属性来使用带有多线图的colormap:
N = 5;
轴( 'NextPlot', 'replacechildren', 'ColorOrder',cell2mat(linspecer(N)))
X = linspace(0,π* 3,1000);
Y = bsxfun(@(x,n)sin(x+2*n*pi/ n), x。',1:N);
情节(GCA,X,Y, '线宽',5)
11.M-file帮助部分应该包括一个'See also…行,以链接到类似的和相关的函数。
12.分发colorbrewer方案需要包括一份原始Apache版权许可的副本。
斯蒂芬Cobeldick(查看配置文件)
我一直在寻找更好看,可区分的颜色映射来取代标准的,这在一开始似乎提供了这个文件。然而,这并不是替换colormap的一个下降,而且M-file有多个缺点,这与这个想法背道而驰:
1.非标准单元阵列输出:所有标准MATLAB色彩映射表返回一个NX3数字矩阵。
2.非标准默认大小255:标准的MATLAB颜色映射使用当前颜色映射大小(非常有用!)
3.在帮助中没有H1行。
4.运行mlint给出了8条用于改进代码的消息。
5.如果不添加额外的代码,该示例将无法工作。
6.当“nargin”足够时,调用像“exist”这样的慢函数。
7.不必要的“for”循环可以向量化(特别是在返回标准数字颜色映射时)。
8.for循环中没有数组预分配。
9.不必要使用“varargin”当一个简单的第二输入将是足够的。
10.示例说明MATLAB绘图命令使用不好。与下面的代码相比,只需要一半的行数:
N = 5;
颜色表(cell2mat(linspecer(N)));
X = linspace(0,π* 3,1000);
Y = bsxfun(@(x,n)sin(x+2*n*pi/ n), x。',1:N);
情节(X, Y,“线宽”,5)