图像缩略图

美丽和可区分的线颜色+ ColorMap

版本1.4.0.0(8.25 kB) Jonathan C. Lansey
绘制许多线条,具有非常明显和美观的颜色。适用于'n'颜色

265下载

更新2015年9月16日

查看版本历史记录

查看许可证

默认的MATLAB默认线条规范和COLORMAPS是惊人的原油。该函数通过在*感知*空间中间隔〜平等来创建可区分的颜色,而不是在RGB空间中。它是基于辛西亚啤酒教授(Colorbrewer!)的研究,但易于使用。
此函数创建NX3数组的N [R B G]颜色
这些可用于绘制许多线条,具有可区分和漂亮的色彩。
linestyles = linspecer(n);为您提供n种颜色:linestyles(ii,:)
Colormap(Linspecer);设置您的Colormap以易于区分色彩和令人愉悦的审美
linestyles = linspecer(n,'定性');迫使颜色到所有可区分(最多12个)
linestyles = linspecer(n,'顺序');迫使颜色沿频谱变化

_______________________________________________

示例演示颜色。

%线颜色
n = 6;
x = linspace(0,pi * 3,1000);
y = bsxfun(@(x,n)sin(x + 2 * n * pi / n),x',1:n);
c = linspecer(n);
轴('nettplot','replyechildren','colorourder',c);
plot(x,y,'linewidth',5)
ylim([ - 1.1 1.1]);

%更简单的线条颜色示例
n = 6;x = linspace(0,pi * 3,1000);
c = linspecer(n)
搁置;
对于II = 1:n
y = sin(x + 2 * ii * pi / n);
绘图(x,y,'颜色',c(ii,:),'linewidth',3);
坚持,稍等;
结尾

%ColorMap示例
a = rand(15);
数字;imagesc(a);%默认colormap.
数字;imagesc(a);Colormap(Linspecer);%linspecer colormap.

_______________________________________________

学分和函数来自哪里:

颜色很大程度上取决于:
http://colorbrewer2.org.和辛西娅啤酒,马克哈尔斯和宾夕法尼亚州立大学
她从PhsyChometic角度研究了这一点,并制作了颜色
美妙地。

我从许多人做出了选择,以决定最好的一次在matlab中的绘图线。我也对我认为有点太亮的颜色进行了一个小的变化。此外,一些插值正在进行顺序线风格。文件中包含Apache样式软件许可证。

引用

Jonathan C. Lansey(2021年)。美丽和可区分的线颜色+ ColorMap(//www.tianjin-qmedu.com/matlabcentral/fileexchange/42673-beautiful-dand-distinguise-line-colors-colormap),Matlab中央文件兑换。检索到

评论和评级(77.

ketian ye.

好的结果,易于使用。

朱尔斯雷

艾哈迈德Naceur.

一个强大的功能(谢谢)。但为什么它不使用子图?

Johannes Korsawe.

有什么关于斯蒂芬提到的许可证问题的事情?

费尔南多弗洛雷斯

庆阳戴

谢谢你的助攻。

Artur Kaminski.

杰克马丁

Yanyan Tang.

Zhewei Yao.

Tarek Rashwan.

RenéSørensen.

Ahmed Alghamdi.

非常感谢你。您的功能在即将到来的纸张中提高了数字的颜色。

Marcelo Fernandes.

邱涛

Yukun张

谢谢你的代码,它真的有助于我在我的论文工作中改进我的照片

Svetlana Baranova.

谢谢你的好功能!

Jakob Jongsma.

伟大的!

玛鲁

Xiangjie谢

yh b.

兰德瓦里尤

Ajey Venkataraman.

Zhih.

感谢您分享此文件!

杭杭马

陈英奇

非常好,美丽!

雷钊

KAE.

有用

Mukalu Masaki.

你是威祖

phuc ho

Gustav佛罗伦蒂诺

Procat.

Chung Il Park.

出色的

大卫佛朗哥

极好的!

Richelle Cabatic.

易于使用,谢谢你!

Shailesh Appukutan.

T Rockett.

建康

米歇尔Xloyannis.

雷李

Gizem Okyay.

DF.

奇妙的功能,在Matlab R2014A和R2014B中效果很好。谢谢!

DF.

吉诺Delfe.

马修浩羊

Breezywest.

fannyymost.

我喜欢它,很酷

闵镇李

景文

斯蒂芬Cobeldick.

躺在牌照上是一个偷偷摸摸的事情。

虽然作者写入“Apache样式软件许可证包含在文件中”实际上,此下载中的任何位置都没有提到Apache许可证。提供的许可实际上是BSD许可证,Matlab文件交换支持的唯一一个。万博1manbetx

此提交删除了Cynthia Brewer的ColorBrewer ColorSchemes的许可证条件,这需要包含她的Apache许可证:

http://www.personal.psu.edu/cab38/colorbrewer/colorbrewer_updates.html.

特里斯坦Ursell.

程乔琳

程乔琳

斯特凡诺斯

杰米

海奥

斯蒂芬Cobeldick.

请注意,此功能会破坏原作者的版权,因为它不包括版权声明本身:

http://www.personal.psu.edu/cab38/colorbrewer/colorbrewer_updates.html.

闫江

很有用。如果靠近黄色的颜色较暗,它会更好。

佛拉姆

感谢您共享此文件,非常有用!

杰夫刘

Matthias Hunstig.

这是我一段时间的标准Colormap。然而,我经常最终改变黄线的颜色 - 它远令人识别在白色背景上。

郭金冯

谢谢你这个伟大的功能。这使得这个数字更好,方便。

Jonathan C. Lansey

谢谢每个人的评论,我很欣赏他们。
还要谢谢斯蒂芬的建议。

丹尼

感人的。将其设置为默认值

斯蒂芬Cobeldick.

如果他们希望改进本提交的代码,这可能对作者感兴趣:
//www.tianjin-qmedu.com/help/matlab/matlab_prog/vectorizizizizizizization.html.

斯蒂芬Cobeldick.

在作者对我的上次评论作出的更改后,我虽然我会再次审核这份提交。对于我之前制作的同一点:
1.该功能现在返回MATLAB标准N * 3数字Colormap。
2.默认大小现在为64,仍然与MATLAB的COLORMAP函数的默认值不匹配。
3.现在有一个H1线(尽管可能包含“Colormap”这个单词中的单词?)。
4. MATINT消息已参加(在MATLAB R2012B上)。
这个例子现在完成!
6.现在称“nargin”,而不是慢速“存在”。
7.“对于”循环仍然用于完成基本算术。这是由于数据存储在单元格阵列中。如果数据简单地存储在数字阵列中,则可以删除所有这些“for”循环。
8.现在预先利用“用于”循环之前的单元格阵列。
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用户介绍给更好的ColorMaps而不是“JET”和“HSV”。

安妮Urai.

美丽,将此作为默认的Colormap添加到我的初始 - 没有伤害眼睛。谢谢!

G W.

阅读本文后的颜色很大参考:http://eagereyes.org/basics/rainbow-color-map.

G W.

G W.

安德鲁·谭

很美丽。谢谢!

杰里米曼宁

多么美丽的Colormap--我的新默认。谢谢!

陆丽

非常感谢!

Jonathan C. Lansey

谢谢你最出色的反馈斯蒂芬。我已经更新了周末几乎所有建议的功能。我希望它将很快得到Mathworks的批准。

斯蒂芬Cobeldick.

修复上面的示例:通过设置“ColorOrder”Axes属性,可以使用带有多线图的ColorMap:

n = 5;
轴('nettplot','replatechildren','colororder',cell2mat(linspecer(n)))
x = linspace(0,pi * 3,1000);
y = bsxfun(@(x,n)sin(x + 2 * n * pi / n),x',1:n);
绘图(GCA,X,Y,'LineWidth',5)

11. M-File帮助部分应包括“参见”行,以链接到类似和关联的功能。
12.分发ColorBrewer方案需要包括原始Apache版权许可证的副本。

斯蒂芬Cobeldick.

我一直在寻找更好的寻找,可区分的ColorMAP,以替换标准的ColorMaps,首先是这个文件似乎提供的。但是,这不是替代Colormap中的下降,M-File具有多个缺点,从而损害了这个想法:
1.非标准单元格阵列输出:所有标准MATLAB COLORMAPAP返回NX3数字矩阵。
2.非标准默认大小为255:标准MATLAB ColorMAPS使用当前的Colormap大小(非常有用!)。
3.帮助下没有H1线。
4.运行MLINT为代码改进提供八条消息。
5.如果没有添加额外代码,该示例不起作用。
6.当“Nargin”就足够的时候,调用慢的功能就像“存在”。
7.不必要的“for”循环可以被矢量化(特别是如果返回标准数字Colormap)。
8.“”为“循环中没有阵列预配。
9.在简单的第二个输入将足够时,不必使用“varargin”。
10.示例显示了MATLAB PLOT命令的使用差。与下面的代码进行比较,分为一半的行数:
n = 5;
Colormap(Cell2mat(linspecer(n)));
x = linspace(0,pi * 3,1000);
y = bsxfun(@(x,n)sin(x + 2 * n * pi / n),x',1:n);
plot(x,y,'linewidth',5)

Matlab释放兼容性
用R2010B创建
兼容任何释放
平台兼容性
视窗 苹果系统 Linux.

社区宝藏狩猎

找到Matlab Central中的宝藏,并发现社区如何帮助您!

开始狩猎!