Plotting surf tiles at the center rather than bottom left

2 views (last 30 days)
As per the title, is there a way to do this?
if true
surf(double(B));
view(2);
hold on
plot3(x_P,y_P,2*ones(1,particles),'ws')
drawnow
hold off
axis tight
axis square
end
I want the red squares in the center of the coordinates, not at the bottom-left, as I'm trying to implement a particle filter and want to display the results best visually.

Answers (1)

Kevin Claytor
Kevin Claytor on 4 Sep 2012
It looks like you're using essentially a binary map for the image. I would use imagesc instead, it draws the patch centered at the (x,y) coordinates. Surf draws the patch between the (x,y) coordinates. Example;
[X,Y,Z] = peaks(30);
figure; hold on;
imagesc(X(1,:),Y(:,1),Z);
plot(X,Y,'ws');

Community Treasure Hunt

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

Start Hunting!