2011-08-31 142 views
29

我正在绘制x,y空间中的一系列曲线,其中每个曲线由标量值z标识。我希望将z值映射为每行的颜色,但大多数颜色映射/颜色表都是在考虑图像的情况下构建的(例如,在白色背景上,灰度颜色映射隐藏z的一个极值)。有没有比“彩虹”色图更好的色阶?

彩虹/光谱/喷射彩色地图 - 这是许多绘图程序中的默认设置 - 效果更好,但白色背景上的黄色/青色线条的可见度较差,蓝色/青色/绿色之间的色彩对比较差颜色。 Borland和泰勒进一步讨论这个问题和其他问题与彩虹颜色映射:

有人可以推荐更好的东西?我在寻找一些方面:

  1. 高能见度在白色背景上的所有颜色
  2. 直观感性的排序(红 - 黄 - 蓝更有意义比红 - 蓝 - 黄)
  3. chromaticity颜色

编辑/更新之间的对比:每endolith的要求,这里是一个简化的样地: sample plot with gray and jet colormaps “灰色”色彩地图和它的亲属(以黑色开始,以白色结尾)是为图像设计的,但是当用于在白色背景上绘制线条或点时,有些图像难以看到或不可见。 “jet”色彩地图及其光谱相关图通常也具有黄色,绿色或其他颜色,难以在白色背景上看到。

+1

您可以包括你正在努力使剧情的照片吗?我想象你的建议中包含http://matplotlib.org/examples/pylab_examples/contour_demo.html或http://matplotlib.org/examples/mplot3d/contour3d_demo.html – endolith

+1

@endolith包含的示例图。 – ryggyr

+0

类似的:http://stackoverflow.com/q/13968520/125507 – endolith

回答

8

下面是我最终使用的解决方案:基于面部为主的亮度匹配

Kindlmann et al确定了几个isoluminant颜色研究(可作为html talkpdf paper)。的colors and RGB triples they found如下:

  1. 红色(0.847,0.057,0.057)
  2. 黄色(0.527,0.527,0)
  3. 绿色(0,0.592,0)
  4. 青色(0,0.559 ,0.559)
  5. 蓝色(0.316,0.316,0.991)
  6. 品红(0.718,0,0.718)

直线插补在这些点之间创建一个修改后的“等亮度彩虹”彩色地图,与使用完全饱和的黄色和青色的典型彩虹色彩地图相比,白色背景提供更好的对比度。在某些情况下,我只使用这些点的一个子集来插入颜色表(例如,通过放下绿色或青色)。

enter image description here

+2

我喜欢这个想法,但在这种形式下,我会说它不符合你的观点#2。正如'edallme'所说,观看者不能很好地区分多色彩虹地图。我认为你需要坚持使用这些颜色中的两种或三种,以便使任何给定的颜色映射变得直观。 – weymouth

+0

@韦茅斯我认为#2(直观的感知排序)很好的满足了这个顺序。你的意思是#3(色彩之间的色度对比度好)?我不确定如果在2-3种颜色之间进行插值与5-6插值相比,确定z值会更容易,但也许你是对的。 – ryggyr

+0

我认为你已经找到了一组对比鲜明的颜色。我说的是研究表明人们不会直觉地得到彩虹。从单个值(z)到彩虹色(R-> O-> Y-> G-> B-> I-> V)的映射从头到尾逆转很难。所以人们需要不断引用你的传奇。将单个渐变(比如R-> B)精神映射到z更容易。 – weymouth

9

我会用Color Brewer来选择颜色。它根据您的要求为地图提供各种颜色调色板。相同的调色板可用于其他可视化。

编辑: 下面是一些更多的资源,但推荐的顺序颜色从较浅的颜色开始,这是您在评论中指出的内容。另一种选择是复制别人正在做的事情。例如,Many Eyes中使用的颜色可能会起作用。

+4

所有Color Brewer的“顺序”配色方案都是从白色或接近白色开始的,而“发散”配色方案中间为白色或接近白色,两者都不适用于在白色bg上绘制线条。 “定性”配色方案不直接适用于顺序数据,但可能在选择建议颜色之间进行插值就足够了。 – ryggyr

-1

我有这个问题所有的时间。我通常最终做的是采取双色连续方案并切断饱和度过低的部分。这只要只有几行就可以工作。不过,我不喜欢这个方法,我很想听到一个更好的建议...

12

Perceptually improved colormaps具有恒定亮度或亮度,在The rainbow is dead…long live the rainbow!单调增加,与一些文档彩虹色彩映射的几种变化:

Perceptually improved demo

Dave Green's `cubehelix' colour scheme是彩虹的颜色表“意图被视为强度不断增强......从黑色到白色,德远离纯灰度(即在彩色立方体中使用锥形螺旋线的对角线),同时确保感知强度的连续增加“。您可以切断白色端部以使其适合于白色背景。

enter image description here

CMRmap.m“我们设计了保持颜色的颜色表,但混色部件,使得颜色表的黑白渲染产生灰度表现是单调与强度。”同样,你必须剪掉白底:

CMRmap demo

+2

感谢endolith。我意识到cubehelix色彩映射表,但如果用于在白色背景上着色线条,它将受到比例尺一端的不可见线条的影响,就像灰度色彩映射一样。 – ryggyr

+0

@ryggyr:是的,但你可以切断白底。你想要一个从黑暗到明亮的色彩地图,但他们都会遇到这个问题。 – endolith

+1

@ryggyr:等一下。你*不需要*从黑暗到明亮的色彩地图。你只想要黑暗的颜色。当我回答这个问题时,我对你想要的东西有着非常不同的想法。 – endolith

8

对于量化任务,彩虹/分类彩色地图显示比分散彩色地图差得多。从InfoVis '11看到这个最近的一篇文章:

  • 米歇尔·伯金,克齐斯茨托夫·加乔斯,阿曼达彼得斯,迪米特里奥斯Mitsouras,西蒙娜Melchionna,弗兰克Rybicki,查尔斯·费尔德曼和汉斯皮特·菲斯特。评估心脏疾病诊断的动脉可视化。 IEEE Transactions on Visualization and Computer Graphics 17,12(2011年12月),2479-2488。 DOI=10.1109/TVCG.2011.192Link to PDF, Slides, and Images.

如果你需要一个明确的规模,看看从CHI '12使用了XKCD调查数据集谈论我们如何感知颜色的差异这个优秀的论文。它允许您通过人类感知差异的程度来评定色阶。他们的基于网络的Color Palette Analyzer也可以让你评估自己的色彩比例!

Color Palette analysis example

+2

谢谢edallme。大多数不同色彩地图的问题在于,它们倾向于在中间或末端具有白色或浅色,这是我试图避免的。分类比例也不是我所需要的,因为我试图用线条颜色显示一些定量信息。也许从Heer和Stone定义的颜色构建的量化色彩尺度是令人满意的。 – ryggyr

1

一个很好的资源,我发现是由保罗·托尔的笔记,发现这里:http://www.sron.nl/~pault/

在该网站上,你可以找到绘图无序,不同的数据集几个不错的调色板以及有序数据的发散和彩虹色图。

“为了让自己的科学成果尽可能清晰的图形,它更是得心应手有那些颜色的调色板:

  • 不同的所有的人,包括色盲读者;
  • 不同于黑色和白色;
  • 截屏和纸;
  • 仍然匹配良好。