在MATLAB中绘制256个正方形/矩形

gpu*_*guy 2 printing matlab plot image-processing matlab-figure

我试图使用MATLAB矩形函数绘制256个小尺寸的正方形.如果我正在绘制10个正方形,那么以下工作正常:

for i=1:2:40

rectangle('Position',[5,3+i,0.3,0.3],...
      'Curvature',[0,0],...
     'LineStyle','-', 'faceColor', 'black')

end

axis off; 

daspect([1,1,1])
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

但是当我将for循环的最后一个值更改为512(绘制256个方块)时,它打印不正确:

在此输入图像描述

以下是上图中一部分的放大版本: 在此输入图像描述

这个图像清楚地显示某些事情是错误的,因为正方形的边不完全相等,并且正方形的尺寸变得越来越小.广场:任何人都可以帮助我完美地绘制正方形,尺寸不会缩小,?(我对内存没有任何问题,我可以容忍多个页面向下滚动以覆盖整个方块)

And*_*ein 5

这是一种经典的莫尔效应.您无法在显示器上显示那么多矩形,因为没有足够的像素.Matlab为您做了一些下采样.因此,您获得了另一个最初不存在的频率.