图片缩略图

美丽和可分辨的线条颜色+彩图

版本1.4.0.0(8.25 kB) Jonathan C. Lansey
用非常容易区分和美观的颜色绘制大量的线条。适用于N色
4.8
71次评级

237下载

更新2015年9月16日

视图版本历史

查看许可协议

默认的Matlab默认线规格和颜色图是惊人的粗糙。这个函数通过在“感知”空间(而不是RGB空间)等距来创建可识别的颜色。它是基于辛西娅布鲁尔教授(colorbrewer!)的研究,但惊人地容易使用。
此函数创建NX3数组的N [R B G]颜色
这些可用于绘制许多线条,具有可区分和漂亮的色彩。
linestyles = linspecer(n);为您提供n种颜色:linestyles(ii,:)
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);
轴('nettplot','replyechildren','colorourder',c);
情节(X, Y,“线宽”,5)
ylim([ - 1.1 1.1]);

%简单线条颜色的例子
N = 6;X = linspace(0,π* 3,1000);
C = linspecer (N)
推迟;
对于II = 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.tianjin-qmedu.com/matlabcentral/fileexchange/42673-beautiful-dand-distinguise-line-colors-colormap),Matlab中央文件兑换。检索到

意见及评分(78

shangwei赵

谢谢!

Ketian你们

效果好,使用方便。

朱尔斯雷

艾哈迈德Naceur.

功能强大(谢谢)。但为什么没有附带次要情节呢?

Johannes Korsawe.

斯蒂芬提到的许可证问题有解决办法了吗?

庆阳戴

谢谢你的帮助。

Artur Kaminski.

杰克马丁

Yanyan Tang.

Zhewei Yao.

Tarek Rashwan.

雷内·Sørensen

艾哈迈德Alghamdi

非常感谢。你的功能改进了我即将发表的论文中数字的颜色。

马塞洛•费尔南德斯

秋道

Yukun张

谢谢你的代码,它真的帮助我提高了我的PIC在我的纸工作

Svetlana Baranova.

谢谢你漂亮的功能!

Jakob Jongsma.

太棒了!

Xiangjie谢

本产品B

兰德瓦里尤

Ajey Venkataraman

ZhiH

谢谢分享!

Hanghang马

陈Yingqi

非常好,非常漂亮!

lei赵

KAE.

有用

Mukalu正树

你媳

他何

Procat

Chung Il Park.

优秀的

大卫佛朗哥

极好的!

Richelle Cabatic.

易于使用,谢谢你!

Shailesh Appukuttan

T罗基特

剑康

米歇尔Xloyannis.

雷李

Gizem Okyay.

DF

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

DF

基诺Delfe

马修Hoehler

Breezywest.

Fannymost

我喜欢它,很酷

minzhen李

静温

斯蒂芬Cobeldick.

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

尽管作者写道“文件中包含一个APACHE风格的软件许可”,但实际上在下载的任何地方都没有提到APACHE许可。所提供的许可证实际上是一个BSD许可证,是MATLAB文件交换所支持的唯一许可证。万博1manbetx

此提交打破了Cynthia Brewer的ColorBrewer配色方案的许可条件,该条件要求包括她的APACHE许可:

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

特里斯坦Ursell

程乔琳

程乔琳

塞浦路斯

杰米

海奥

斯蒂芬Cobeldick.

注意,这个函数破坏了原始作者的版权,因为它没有包含版权声明本身:

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

燕江

非常有用的。如果接近黄色的颜色再深一些就更好了。

佛拉姆

谢谢你分享这个文件,非常有用!

杰夫刘

马提亚Hunstig

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

“国丰

感谢这个伟大的功能。这使得图形更好,更方便。

Jonathan 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线(尽管可能包含“Colormap”这个单词中的单词?)。
4.mlint消息已经被处理(在MATLAB R2012b上)。
这个例子现在完成!
6.现在叫“nargin”,而不是慢的“exist”。
7.“for”循环仍然用于完成基本的算术运算。这是由于数据存储在单元格数组中。如果数据只是简单地存储在数字数组中,那么所有这些“for”循环都可以被删除。
8.现在在for循环之前预分配单元格数组。
9.不必要使用“varargin”,当一个简单的第二个论点就足够了。
10.改进的例子。
11.仍然没有'See also'行链接到相关函数:"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

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

G W

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

G W

G W

安德鲁·谭

很美丽。谢谢!

杰里米曼宁

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

陆丽

谢谢!

Jonathan C. Lansey

谢谢你的反馈,斯蒂芬。我已经在周末更新了功能,包括了几乎所有你的建议。我希望它能很快被Mathworks批准。

斯蒂芬Cobeldick.

修复上面的例子:通过设置“ColorOrder”轴属性,可以使用带有多线图的彩色地图:

N = 5;
轴('nettplot','replatechildren','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,'LineWidth',5)

11.m文件的帮助部分应该包括“参见……”,以连接到相似和相关的功能。
12.分发colorbrewer方案需要包含一份原始Apache版权许可的副本。

斯蒂芬Cobeldick.

我一直在寻找更好看,可识别的彩色地图,以取代标准的,这是最初的文件似乎提供。然而,这不是一个下降的替代颜色地图,而且m文件有多个缺点,这削弱了想法:
1.非标准单元格阵列输出:所有标准MATLAB COLORMAPAP返回NX3数字矩阵。
2.非标准的默认大小255:标准的MATLAB colormap使用当前的colormap大小(非常有用!)
3.在帮助中没有H1线。
4.运行mlint给出了8条代码改进的消息。
5.如果不添加额外的代码,该示例将无法工作。
6.调用慢函数,如“exist”,当“nargin”就足够了。
7.不必要的“for”循环可以被向量化(特别是返回标准的数字色图时)。
8.在"for"循环中没有数组预分配。
9.在简单的第二个输入将足够时,不必使用“varargin”。
10.示例显示MATLAB绘图命令的糟糕使用。与下面的代码相比,行数减半:
N = 5;
Colormap(Cell2mat(linspecer(n)));
X = linspace(0,π* 3,1000);
Y = bsxfun(@(x,n))sin(x+2*n*pi/ n), x。', 1: N);
情节(X, Y,“线宽”,5)

Matlab释放兼容性
创建R2010b
与任何版本兼容
平台的兼容性
视窗 苹果系统 Linux

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!