Need help displaying the matrix in Conway's game of life

1 次查看(过去 30 天)
So I cannot find a good way to display and then update the checkerboard during consecutive iterations of the game of life.
I am currently using mat2gray() to convert the matrix to grayscale, and then imshow() to display the matrix. But doing it this way slows down my laptop quite a lot, and I have to close and reopen the image with each iteration.
Is there a way to keep the existing matrix open (perhaps not as an image file) and update it live?
Many thanks,
Joe

回答(1 个)

Stephen23
Stephen23 2018-2-5
"Is there a way to keep the existing matrix open (perhaps not as an image file) and update it live?"
Create the image as a matrix, and display it using image. Make sure that you obtain the image handle:
imh = image(M);
then simply update the image handle's data whenever you want:
set(imh,'CData',M)
Read more in the MATLAB documentation:
  2 个评论
Guillaume
Guillaume 2018-2-5
Assuming the matrix is just 0s and 1s, I recommend using
imh = image(M, 'CdataMapping', 'scaled')
colormap gray
Joe Sheppard
Joe Sheppard 2018-2-5
I will try this, as Stephens suggestions just gave a uniform purple square.
Many thanks to both of you though, for getting back to me so quickly :)
I do appreciate it!

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Conway's Game of Life 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by