How to save matrix as a "pretty print" image?
5 次查看(过去 30 天)
显示 更早的评论
I'm creating animations based on abelian sandpile models, where the sandpile heights (integers>0) are used as index values to convert the matrices into color images (ind2rgb). I would like to create companion animations that show the original data in indexed, matrix form, hence the ask for saving a matrix in "pretty print" format as an image. I'll probably use matrices that are at max 20x20; otherwise, I imagine it'll be hard to keep the "font size" of the numbers large enough.
Depending on the model size, the animations are upwards of 10,000+ frames, so I don't want to do any screenshots or manual saving, even for a smaller/more basic example. But it would be a similar result as screenshotting the matrix as viewed in either the Command Window or Variables workspace. Something like this but without needing the commands and label:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1685856/image.png)
If there's not a quick solution/hack, I may have to go the route of building out a separate function to handle this, which might be fun too.
采纳的回答
Rik
2024-5-4
编辑:Rik
2024-5-4
Depending on your definition of pretty, you can use my text2im function. If you use sprintf, don't forget to transpose the array first (since matrices are column major, but text is generated row major).
4 个评论
Rik
2024-5-4
Happy to help. I was on mobile when I wrote the answer, so links are harder. But I'll edit my answer to include the link.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!