MATLAB 中使用 imshow 在坐标区中画图
2024年1月23日大约 1 分钟
MATLAB 中的imshow
函数,默认是单独弹窗显示。 这在自己调算法的时候无所谓甚至可能更方便,但在需要整洁的时候就比较烦, 例如在便携需要发布的 APP 的时候。
按理说不是多难的问题,但网上排前列的教程比较奇怪,是让人先把坐标区单位改像素, 然后获取尺寸,然后把图像resize
到坐标区大小,然后使用axes
函数(大概是吧?记不太清) 指定下一次画图所在的坐标区,最后再朴素地调用一次imshow
函数,达到目的。
实际上,MATLAB对这种需求是提供了直接接口的:
imshow('peppers.png','Parent',app.UIAxes);
第一个参数可以是文件名,当然也可以是读好的变量。 第三个参数可以是 UI 上的坐标区,当然也可以是subplot
一类的函数搞出来的坐标区。