我需要一种算法或函数来将可见光谱范围的每个波长映射到其等效的RGB值.RGB系统和灯的波长之间是否存在任何结构关系?喜欢这个图像: 替代文字http://www1.appstate.edu/~kms/classes/psy3203/Color/spectrum5.gif 抱歉,如果这是无关紧要的: - ]
我有一个(光谱分布)的数据集波长(x轴)和强度(y轴,以任意单位,其可具有不同的范围...)
我想将此数字数据转换为图形视图,如下图所示.
但是,我从来没有用帆布的,TImages,位图,或任何方式,我会得到这个屏幕做过任何德尔福(2010年).
(显然,如果我可以把数据转换成图像像素的一行,我后来干脆作为根据需要多次为我所需的图像高度复制该行.)
任何人都可以指出我正确的方向或提供遍历x,y值的样本代码,创建彩色图像?我希望我的解决方案能让我(或用户)调整水平(对比度,亮度).
提前致谢.

相关SO帖子:将任何正整数转换为RGB值的算法
假设我有一个带有构造函数的类RainbowColorsMapper RainbowColorsMapper(int n),其中n> = 2.现在我希望连续映射彩虹色从红色到紫色,我使用的方法mapper.getColor(int number)是低值对应红色端,高度接近n到紫色端.如果n = 2,则mapper.getColor(0)返回光谱的大部分左侧颜色(接近红色),并mapper.getColor(1)返回最正确的颜色.与自动缩放的较大n相同.
我的问题:这可以相对容易地完成,如果是,那么算法的建议是什么?