quiver plot on an image

22 views (last 30 days)
Reza Zh
Reza Zh on 1 Mar 2024
Commented: Voss on 1 Mar 2024
Hello
I am trying to quiverplot on an image, but quiver plot shows up very small on the upper left corner (attached here)
I have to use 'imshow' instead of 'imagesc' becasue I want the image in black and white and colored quiver vectors. When I assigne colormap for 'imagesc' it messes the quiver vectors.
Is there any way to superimpose quiver plot on imshow function?
thank you

Accepted Answer

Voss
Voss on 1 Mar 2024
Edited: Voss on 1 Mar 2024
"Is there any way to superimpose quiver plot on imshow function?"
Yes.
% read an image:
img = imread('peppers.png');
% imshow the image:
imshow(img)
% make a quiver plot:
hold on
[m,n,~] = size(img);
[x,y] = meshgrid(1:n,1:m);
quiver(x,y,randn(m,n),randn(m,n))
% zoom in to see some details:
xlim([101 115])
ylim([101 110])
It looks like the x and y you use in quiver are incorrect is why your quiver plot is so small.
  4 Comments
Voss
Voss on 1 Mar 2024
You're welcome!

Sign in to comment.

More Answers (0)

Categories

Find more on Vector Fields in Help Center and File Exchange

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!