How do I change the colors of a matrix image?

5 ビュー (過去 30 日間)
Joseph Lee
Joseph Lee 2020 年 5 月 25 日
編集済み: Ameer Hamza 2020 年 5 月 25 日
I have a script that will generate a 12x12 matrix of ones and zeros. When I create an image from this the default colours are yellow for one and blue for zero. I want to change this to white for zero and red for one.
Can anyone help me?
Thanks,
Joe
m = zeros(12, 12);
numIterations = 1800;
row = ones(1, numIterations);
col = ones(1, numIterations);
m(row(1), col(1)) = 1;
imagesc(m);
axis('on', 'image');
percentage = 0.40; % 20% of time will be the same
for k = 2 : numIterations
if rand(1) < percentage
% 20% of the time it will stay in the same place.
row(k) = row(k-1);
col(k) = col(k-1);
else
% 80% of the time it will select a new place.
% First get a tentative new location.
row(k) = row(k-1) + randi([-1,1], 1);
col(k) = col(k-1) + randi([-1,1], 1);
while row(k) == row(k-1) && col(k) == col(k-1) || row(k) <= 0 || row(k) > size(m, 1) || col(k) <= 0 || col(k) > size(m, 2)
% Get a new location.
row(k) = row(k-1) + randi([-1,1], 1);
col(k) = col(k-1) + randi([-1,1], 1);
while row(k) <= 0 || row(k) > size(m, 1)
row(k) = row(k-1) + randi([-1,1], 1);
end
while col(k) <= 0 || col(k) > size(m, 2)
col(k) = col(k-1) + randi([-1,1], 1);
end
end
end
m(row(k-1), col(k-1)) = 0; % Clear old location
m(row(k), col(k)) = 1; % Set new location
imagesc(m);
grid on;
caption = sprintf('At Iteration %d, Row = %d, Column = %d', k, row(k), col(k));
title(caption, 'FontSize', 15);
drawnow;
pause(0.8)
end

採用された回答

Ameer Hamza
Ameer Hamza 2020 年 5 月 25 日
編集済み: Ameer Hamza 2020 年 5 月 25 日
Use colormap
imagesc(m);
colormap([1 1 1; 1 0 0])
grid on;
  2 件のコメント
Image Analyst
Image Analyst 2020 年 5 月 25 日
How does this give white background with a red square?
Ameer Hamza
Ameer Hamza 2020 年 5 月 25 日
Oh! That was a mistake. Thanks for pointing out.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeColormaps についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by