Apply colormap to plot(x,y)

14 ビュー (過去 30 日間)
Jason
Jason 2011 年 5 月 11 日
Hi. I am plotting optical bandpass filters from measurments and want to colour each point depending on where it is on the spectrum. My x values are wavelength (488 = blue, 532 = green and 670 = red). For each point i plot, I want to be able to plot it in a colour that represents its true colour.
Im not sure how to firstly create the colormap, and secondly apply this to the plot(x,y function).

採用された回答

Andrew Newell
Andrew Newell 2011 年 5 月 11 日
To create the colormap, you could use spectrumRGB in Spectral and XYZ Color Functions.
EDIT: Here is a little demo.
n = 20;
x = rand(n,1); y = rand(n,1); spect = linspace(300,830,n);
sRGB = spectrumRGB(spect);
sRGB = squeeze(sRGB); % For some reason spectrumRGB returns a 3D array
figure; hold on
for i = 1:n
line(x(i),y(i),'Marker','*','Linestyle','none','Color',sRGB(i,:))
end
spectrumlabel(gca)

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeColor and Styling についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by