0

我正在运行一个模拟,该模拟描述了 2D 方格的正面和背面的活动。正面和背面的描述例如:

front= [-1 1 -1 0 1 0 1  2 -2 1 ];
back = [ 1 0  0 0 2 0 1 -2 -2 1 ];

每个数字表示晶格上的不同活动。

我想以交互方式绘制它,以便晶格中的每个值都用不同的标记和颜色标记,并且每次迭代都会更新绘图。到目前为止,我有类似的东西:

    % the upper and lower edges of the lattice
    figure (1)
    hold on
    plot(linspace(1,100,10),10*ones(1,10),'k'); %front
    plot(linspace(1,100,10),1*ones(1,10),'k'); %back
    % the front and back when are equal 0 zero (initial condition)
    plot(100*ones(1,10),1:10,'ob','markersize',10); % front
    plot(1*ones(1,10),1:10,'ob','markersize',10); % back
    xlim([-1 101])
    ylim([-1 11])

这标志着我正在处理的系统的初始设置,绘制它以查看我所指的内容。

现在在每次迭代中,我想查看不同值的圆圈改变颜色,例如:

figure (1)
ind=find(front==1);
if (isenum(ind)==0)
    plot(100*ones(1,length(ind)),ind,'or','markerfacecolor','r');
end

这样做了 10 次,前面有 5 个值,后面有 5 个值,并且在模拟上非常繁重为每个值分配不同的标记。我设法用 imagesc 做到这一点,但是,我在驾驶标记时丢失了我想要保留的图形(我希望稍后添加箭头和其他东西)。有人对这类事情有任何经验吗?

4

0 回答 0