Jet Colormap with black and white at the ends
79 次查看(过去 30 天)
显示 更早的评论
Is there a way to get the jet colormap to have black at its lowest end and white at its highest end instead of blue and red respectively. Just to be clear, I still want the jet colors in the middle of this band.
Thank you!!
0 个评论
回答(4 个)
Ruger28
2020-9-14
You could just create a colormap, and then add a single row for black and a row for white at the beginning and the end respectively. Is that you you are looking for?
JetMap = colormap(jet);
JetMap = [[0 0 0];JetMap;[1 1 1]];
xvals = [1:66];
yvals = [1:66];
scatter(xvals,yvals,100,JetMap,'filled');
0 个评论
Star Strider
2020-9-14
Try this:
figure
contourf(rand(20))
grid on
colormap([0 0 0;jet(14);1 1 1]) % Append ‘White’ & ‘Black’ To The Ends Of The ‘jet’ Colormap
.
0 个评论
DGM
2023-1-15
编辑:DGM
2023-1-15
Observe jet() in RGB:
CT = jet(256);
% plot the channel trajectories (it's simple PWL)
plot(CT(:,1),'r'); hold on
plot(CT(:,2),'g')
plot(CT(:,3),'b')
Replace the last colors at the endpoints with black and white instead of subdued blue and subdued red. Interpolate to form a new CT of the desired length.
% generate a new CT from a list of breakpoints
N = 256; % new CT length
x = [0 1 3 5 7 8]/8;
CT0 = [0 0 0; 0 0 1; 0 1 1; 1 1 0; 1 0 0; 1 1 1];
xf = linspace(0,1,N);
CT = interp1(x,CT0,xf,'linear','extrap');
% plot the channel trajectories (ends are now B/W)
plot(CT(:,1),'r'); hold on
plot(CT(:,2),'g')
plot(CT(:,3),'b')
Try it out
% use the map to plot something
x = linspace(-pi/2,pi/2,30);
y = x.';
z = sin(x).*sin(y);
surf(x,y,z)
colormap(CT)
colorbar
view(-17,50)
See also:
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Colormaps 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!